Możliwości wdrażania na platformie Azure

Ukończone

Platforma Azure oferuje różne rozwiązania dotyczące wdrażania dla aplikacji Java. Podczas tej lekcji omówimy niektóre z nich.

Diagram możliwości wdrażania na platformie Azure dla różnych typów aplikacji Java

Maszyny wirtualne

Maszyny wirtualne platformy Azure są dostępne dla systemów Windows i Linux. W przypadku maszyn wirtualnych z systemem Linux można wybrać różne dystrybucje, na przykład Ubuntu, Red Hat czy SUSE.

Maszyny wirtualne są zazwyczaj punktem wyjścia dla migracji typu lift and shift, która jest procesem migracji istniejących maszyn do platformy Azure. W takim przypadku musisz samodzielnie zająć się aktualizacjami systemu operacyjnego, środowiskiem uruchomieniowym języka Java, ustawieniami sieci, przekazywaniem portów i zabezpieczeniami.

Kontenery

  • Azure Kubernetes Service (AKS) to usługa zarządzana platformy Kubernetes. Platforma Kubernetes to de facto standard organizowania konteneryzowanych aplikacji. Doskonale sprawdza się w przypadku mikrousług i aplikacji o średniej wielkości. Usługa AKS oferuje odnajdowanie usług, automatyczne skalowanie i monitorowanie. Firma Microsoft jest współpracownikiem w projektach Kubernetes, takich jak Virtual Kubelet, Dapr i Open Application Model.

  • Azure Red Hat OpenShift to odmiana standardu Kubernetes, zarządzana w systemie Red Hat.

  • Azure Container Instances to rozwiązanie do szybkiego przeprowadzania testów i weryfikacji koncepcji, a także do obsługi kontenerów w modelu przyczepki.

Azure App Service

Jedna z najłatwiejszych w użyciu i najprostszych możliwości wdrażania aplikacji Java na platformie Azure to usługa Azure App Service. Obejmuje automatyczne skalowanie, zintegrowane funkcje monitorowania oraz zabezpieczenia.

Azure Container Apps

Usługa Azure Container Apps umożliwia skoncentrowanie się na tworzeniu konteneryzowanych aplikacji Java, zarówno monolitycznych, jak i mikrousług bez konieczności zarządzania infrastrukturą. Możesz wdrożyć żądania JAR, WARs, a nawet kod źródłowy, a platforma automatycznie optymalizuje pamięć i skaluje aplikacje na podstawie zapotrzebowania. Integruje również zaawansowane funkcje diagnostyczne na potrzeby rozwiązywania problemów z maszyną wirtualną JVM, zapewniając wydajną wydajność aplikacji Java.

Ponadto usługa Azure Container Apps obsługuje zarządzane składniki spring, takie jak Serwer Eureka i serwer konfiguracji, zapewniając bezproblemową integrację platformy Spring. W ramach ekosystemu platformy Azure jest ona przeznaczona do obsługi obciążeń przedsiębiorstwa przy użyciu ekonomicznego skalowania i zaawansowanego zarządzania pamięcią, co czyni go idealnym rozwiązaniem zarówno dla tradycyjnych, jak i nowoczesnych architektur aplikacji.

Funkcje

Możesz również wdrażać kod Java w usłudze Azure Functions. Dzięki temu skorzystasz z doskonałych narzędzi i opcji integracji z innymi usługami platformy Azure.

Poniżej przedstawiono przykładowe scenariusze dotyczące funkcji:

  • Web, Mobile i Internet rzeczy (IoT) — połączone zaplecza
  • Obsługa botów oraz przetwarzanie plików i strumieni w czasie rzeczywistym
  • Automatyzacja zaplanowanych zadań