Wybieranie odpowiedniego miejsca docelowego

Ukończone

Omówiliśmy dostępne opcje wdrażania aplikacji Java w chmurze, a dokładniej na platformie Azure. Ale która opcja najlepiej odpowiada twoim potrzebom? Oto przewodnik, który pomoże Ci wybrać.

Platforma jako usługa lub kontrola infrastruktury?

Pierwszym pytaniem, które należy zadać, jest to, czy chcesz mieć pełną kontrolę nad aplikacją, czy chcesz użyć rozwiązania typu "platforma jako usługa" (PaaS). Twoja odpowiedź zwykle zależy od potrzeb zespołu, z którym pracujesz.

Rozwiązania PaaS są łatwiejsze w użyciu. Wiele zespołów preferuje je, ponieważ oferują niższe koszty, lepszą niezawodność i większe bezpieczeństwo.

Zespoły wybierają rozwiązania PaaS z następujących powodów:

  • Muszą szybko przejść do produkcji i mają tylko ograniczony zespół operacyjny lub brak zespołu operacyjnego.
  • Mają pewne wymagania dotyczące wysokiej dostępności, zabezpieczeń lub zgodności i mogą spełniać te potrzeby dzięki wbudowanym funkcjom oferowanym przez usługę zarządzaną.
  • Mogą nie mieć zasobów ani gotowości do utrzymania infrastruktury klasy produkcyjnej.

Jednak niektóre zespoły wolą mieć pełną kontrolę nad infrastrukturą, głównie z następujących powodów:

  • Jeśli używasz określonego oprogramowania zastrzeżonego lub nietypowych funkcji języka Java, usługa zarządzana może nie być odpowiednia dla Ciebie. Na przykład możesz użyć funkcji rozgłaszań sieciowych, aby znaleźć węzły aplikacji, a ta funkcja nie jest dostępna w usłudze zarządzanej.
  • Używasz określonej biblioteki natywnej, która nie jest uruchamiana w usłudze zarządzanej.

Wybieranie rozwiązania PaaS na platformie Azure

W przypadku uruchamiania obciążeń Java na platformie jako rozwiązania usługi platforma Azure oferuje dwie możliwe opcje:

  • Usługi Azure Functions: Najlepsze dla prostych, zdarzeniowych obciążeń, które można bardzo dobrze skalować.
  • azure App Service: najlepsze w przypadku szybkiego tworzenia prototypów monolitycznych aplikacji internetowych Java.

Wybieranie kontroli infrastruktury na platformie Azure

Aby uzyskać pełną kontrolę nad wdrożeniami, platforma Azure oferuje następujące trzy główne opcje:

  • azure Container Apps: ma wbudowaną obsługę języka Java dla wszystkich typów języka Java na platformie Azure, w tym aplikacji monolitycznych i mikrousług.
  • Azure Kubernetes Service (AKS): jest najlepszy dla bardziej złożonych aplikacji Java opartych na kontenerach. Ty także korzystasz z bogatego ekosystemu AKS.
  • pl-PL: maszyny wirtualne Azure: najlepsze do uruchamiania wszystkich rodzajów obciążenia, lub jeśli chcesz przenieść aplikacje z istniejącej infrastruktury lokalnej bez zmiany ich architektury.

Końcowe słowa ułatwiające podjęcie decyzji

Podjęcie decyzji o miejscu docelowym jest tylko pierwszym krokiem. Podczas wybierania usługi należy pamiętać o następujących kwestiach:

  • Zadania konserwacji różnią się znacznie w zależności od wybranego typu usługi i zestawu umiejętności własnego zespołu operacyjnego.
  • Twoi deweloperzy korzystają z platformy codziennie i mogą być bardziej produktywni, jeśli usługa zapewnia doskonałe środowisko deweloperskie.

W przypadku obu tych punktów wybór zależy od posiadanego zespołu. Najlepszym rozwiązaniem jest wybranie miejsca docelowego zgodnego z wiedzą i preferencjami twojego zespołu.