Inicio rápido: Implementación de una aplicación Java en Azure Service Fabric con Linux
En este inicio rápido se implementa una aplicación Java en Azure Service Fabric mediante el IDE de Eclipse en una máquina de desarrolladores con Linux. Cuando termine, tendrá una aplicación de votación con un front-end web de Java que guarda los resultados de una votación en un servicio back-end con estado en el clúster.
Azure Service Fabric es una plataforma de sistemas distribuidos para implementar y administrar microservicios y contenedores.
Requisitos previos
- Entorno de Java y Yeoman
- Eclipse Neón (4.6) + y complemento Eclipse para Service Fabric
- SDK de Service Fabric e interfaz de la línea de comandos (CLI)
- Git
Descarga del ejemplo
En una ventana Comandos, ejecute el comando siguiente para clonar el repositorio de la aplicación de ejemplo en la máquina local.
git clone https://github.com/Azure-Samples/service-fabric-java-quickstart.git
Ejecución de la aplicación de forma local
Inicie el clúster local mediante la ejecución del siguiente comando:
sudo /opt/microsoft/sdk/servicefabric/common/clustersetup/devclustersetup.sh
El inicio del clúster local tarda algún tiempo. Para confirmar que el clúster está totalmente operativo, acceda a Service Fabric Explorer en
http://localhost:19080
. Los cinco nodos con estado correcto indican que el clúster local está en funcionamiento.Abra Eclipse.
Seleccione Archivo>Importar>Gradle>Existing Gradle Project (Proyecto existente de Gradle) y siga los pasos del asistente.
Seleccione Directorio y elija el directorio Votingen la carpeta service-fabric-java-quickstart que clonó de GitHub. Seleccione Finalizar.
Ahora tiene el proyecto
Voting
en el Explorador de paquetes para Eclipse.Haga clic con el botón derecho en el proyecto y seleccione Publish Application (Publicar aplicación) en el menú desplegable Service Fabric. Elija PublishProfiles/Local.json como el perfil de destino y seleccione Publish (Publicar).
Abra el explorador web favorito y acceda a la aplicación a través de
http://localhost:8080
.
Ahora puede agregar una serie de opciones de votación y empezar a recibir votos. La aplicación se ejecuta y almacena todos los datos en el clúster de Service Fabric, sin necesidad de una base de datos independiente.
Escalar aplicaciones y servicios en un clúster
Los servicios se pueden escalar en un clúster para adaptarse a un cambio en la carga en los servicios. Para escalar un servicio, cambie el número de instancias que se ejecutan en el clúster. Hay muchas maneras de escalar los servicios. Por ejemplo, se pueden usar scripts o comandos de la CLI de Service Fabric (sfctl
). En los pasos siguientes se utiliza Service Fabric Explorer.
Service Fabric Explorer se ejecuta en todos los clústeres de Service Fabric y se puede acceder a él desde un explorador. Para ello, es preciso ir al puerto de administración HTTP del clúster (19080). Por ejemplo, http://localhost:19080
.
Para escalar el servicio front-end web, realice estas operaciones:
Abra Service Fabric Explorer en el clúster. Por ejemplo,
https://localhost:19080
.Seleccione el botón de puntos suspensivos (...) situado junto al nodo fabric:/Voting/VotingWeb en la vista de árbol y seleccione Scale Service (Escalar servicio).
Ahora puede escalar el número de instancias del servicio front-end web.
Cambie el número a 2 y seleccione Scale Service (Escalar servicio).
Seleccione el nodo fabric:/Voting/VotingWeb en la vista de árbol y expanda el nodo de partición (representado por un GUID).
Ahora puede ver que el servicio tiene dos instancias, y en la vista de árbol verá en qué nodos se ejecutan las instancias.
Mediante esta sencilla tarea de administración, hemos duplicado los recursos disponibles para el servicio de front-end para procesar la carga de usuarios. Es importante entender que no hacen falta varias instancias de un servicio para que se ejecute de forma confiable. Si se produce un error en un servicio, Service Fabric se asegurará de que se ejecute una nueva instancia de servicio en el clúster.
Pasos siguientes
En este inicio rápido ha aprendido a:
- Usar Eclipse como una herramienta para las aplicaciones Java en Service Fabric
- Implementar aplicaciones Java en el clúster local
- Escalar horizontalmente la aplicación en varios nodos
Para más información sobre cómo trabajar con aplicaciones Java en Service Fabric, diríjase al tutorial de las aplicaciones Java.