Краткое руководство. Развертывание приложения Java в Azure Service Fabric в Linux
Статья
В этом кратком руководстве мы развернем приложение Java в Azure Service Fabric, используя интегрированную среду разработки Eclipse на компьютере разработчика Linux. После завершения этого руководства вы получите приложение для голосования с клиентской частью в виде веб-приложения Java, которое сохраняет результаты голосования во внутренней службе с отслеживанием состояния в кластере.
Azure Service Fabric — это платформа распределенных систем для развертывания микрослужб и контейнеров и управления ими.
Запуск локального кластера занимает некоторое время. Чтобы убедиться, что кластер работает, откройте Service Fabric Explorer по адресу http://localhost:19080. Наличие пяти работоспособных узлов означает, что локальный кластер запущен и работает.
Откройте Eclipse.
Щелкните File>Import>Gradle>Existing Gradle Project (Файл > Импорт > Gradle > Существующий проект Gradle) и следуйте указаниям мастера.
Щелкните Directory (Каталог) и в клонированной из GitHub папке service-fabric-java-quickstart выберите каталог Voting (Голосование). Выберите Готово.
Теперь у вас имеется проект Voting в обозревателе пакетов для Eclipse.
Щелкните правой кнопкой мыши проект и выберите Publish Application (Опубликовать приложение) в раскрывающемся списке Service Fabric. Выберите PublishProfiles/Local.json в качестве целевого профиля и нажмите кнопку Publish (Опубликовать).
Откройте любой веб-браузер и перейдите к приложению по адресу http://localhost:8080.
Теперь можно добавить варианты для выбора в голосовании и начать прием голосов. Приложение запускается и хранит все данные в кластере Service Fabric без необходимости использования отдельной базы данных.
Масштабирование приложений и служб в кластере
Службы могут легко масштабироваться в кластере с учетом изменения нагрузки на службы. Масштабирование службы осуществляется путем изменения числа экземпляров, запущенных в кластере. Существует много способов масштабировать службы. Например, можно использовать скрипты или команды CLI для Service Fabric (sfctl). В следующих шагах используется Service Fabric Explorer.
Средство Service Fabric Explorer работает во всех кластерах Service Fabric. Чтобы открыть его, укажите в браузере порт управления HTTP (19080) для нужного кластера. Например, http://localhost:19080.
Для масштабирования службы веб-интерфейса сделайте следующее:
Откройте Service Fabric Explorer в своем кластере. Например, https://localhost:19080.
Щелкните многоточие (...) рядом с узлом fabric:/Voting/VotingWeb в дереве и выберите Масштабировать службу.
Теперь вы можете изменить количество экземпляров службы веб-интерфейса.
Измените количество на 2 и щелкните Масштабировать службу.
Выберите узел fabric:/Voting/VotingWeb в дереве и разверните узел раздела (он отображается в виде идентификатора GUID).
Теперь вы видите, что у службы есть два экземпляра, а с помощью дерева вы можете определить узлы, на которых запущены эти экземпляры.
С помощью этой простой задачи управления вы удвоили количество ресурсов для обработки пользовательской нагрузки для службы веб-интерфейса. Важно понимать, что для надежной работы службы не требуется запускать несколько экземпляров службы. При сбое в работе службы Service Fabric запускает новый экземпляр службы в кластере.
Следующие шаги
Из этого руководства вы узнали, как выполнить следующие действия:
Использование Eclipse в качестве средства для приложений Java Service Fabric.
Развертывание приложений Java в локальном кластере.
Масштабирование приложения на несколько узлов
Дополнительные сведения о работе с приложениями Java в Service Fabric см. в руководстве по приложениям Java.
В этом модуле вы узнаете о запуске приложений Java в Azure. Вы также можете выбрать лучший вариант службы между виртуальными машинами, службой приложений Azure, бессерверными функциями, службой Azure Kubernetes (AKS), приложениями контейнеров Azure (ACA) и Azure Spring Apps.
Создавайте комплексные решения в Microsoft Azure для создания Функции Azure, реализации веб-приложений и управления ими, разработке решений, использующих службу хранилища Azure, и т. д.