Wprowadzenie do aplikacji przykładowej
Uwaga
Plany Podstawowa, Standardowa i Enterprise zostaną wycofane od połowy marca 2025 r. z 3-letnim okresem emerytalnym. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.
Zużycie standardowe i dedykowany plan zostaną wycofane od 30 września 2024 r. z całkowitym zamknięciem po sześciu miesiącach. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz Migrowanie użycia usługi Azure Spring Apps w warstwie Standardowa i dedykowanego planu do usługi Azure Container Apps.
Ten artykuł dotyczy: ✔️ Podstawowa/Standardowa ✔️ Enterprise
W tym przewodniku Szybki start użyjemy dobrze znanej przykładowej aplikacji PetClinic , aby pokazać, jak wdrażać aplikacje w usłudze Azure Spring Apps. Przykład Pet Clinic demonstruje wzorzec architektury mikrousług i wyróżnia podział usług. Zobaczysz, jak wdrażać usługi na platformie Azure za pomocą funkcji usługi Azure Spring Apps, takich jak odnajdywanie usług, serwer konfiguracji, dzienniki, metryki, śledzenie rozproszone i obsługa narzędzi przyjaznych dla deweloperów.
Aby postępować zgodnie z przykładami wdrażania usługi Azure Spring Apps, potrzebujesz tylko lokalizacji kodu źródłowego, która jest dostarczana zgodnie z potrzebami.
Na poniższym diagramie przedstawiono architekturę aplikacji PetClinic.
Uwaga
Gdy aplikacja jest hostowana w planie Azure Spring Apps Enterprise, zarządzana usługa konfiguracji aplikacji dla oprogramowania VMware Tanzu przyjmuje rolę serwera Spring Cloud Config Server, a zarządzany rejestr usługi VMware Tanzu przyjmuje rolę odnajdywania usługi Eureka bez żadnych zmian w kodzie aplikacji. Aby uzyskać więcej informacji, zobacz sekcję Usługi infrastruktury hostowane przez usługę Azure Spring Apps w dalszej części tego artykułu.
Usługi funkcjonalne do wdrożenia
PetClinic jest rozłożony na cztery podstawowe aplikacje Spring. Wszystkie z nich są niezależnie wdrażanymi aplikacjami zorganizowanymi przez domeny biznesowe.
- Usługa klientów: zawiera ogólną logikę danych wejściowych użytkownika i walidację, w tym informacje o zwierzętach domowych i właścicielach (Nazwa, Adres, Miasto, Telefon).
- Usługa wizyt: przechowuje i wyświetla informacje o wizytach dla każdego zwierzaka komentarze.
- Usługa weterynarzy: Sklepy i pokazuje informacje weterynarzy, w tym nazwy i specjalizacje.
- Brama interfejsu API: Brama interfejsu API jest pojedynczym punktem wejścia do systemu, używanym do obsługi żądań i kierowania ich do odpowiedniej usługi lub do wywoływania wielu usług i agregowania wyników. Trzy podstawowe usługi uwidaczniają klientowi zewnętrzny interfejs API. W rzeczywistych systemach liczba funkcji może szybko rosnąć wraz ze złożonością systemu. Setki usług może być zaangażowanych w renderowanie jednej złożonej strony internetowej.
Usługi infrastruktury hostowane przez usługę Azure Spring Apps
Istnieje kilka typowych wzorców w systemach rozproszonych, które obsługują podstawowe usługi. Usługa Azure Spring Apps udostępnia narzędzia, które rozszerzają aplikacje Spring Boot w celu zaimplementowania następujących wzorców:
- Usługa konfiguracji: Azure Spring Apps Config to skalowalna w poziomie scentralizowana usługa konfiguracji dla systemów rozproszonych. Używa on wtyczki repozytorium, które obecnie obsługuje magazyn lokalny, Git i Subversion.
- Odnajdywanie usług: umożliwia automatyczne wykrywanie lokalizacji sieciowych dla wystąpień usługi, które mogą mieć dynamicznie przypisane adresy z powodu skalowania automatycznego, awarii i uaktualnień.
Konfiguracja bazy danych
W domyślnej konfiguracji aplikacja Pet Clinic używa bazy danych w pamięci (HSQLDB), która jest wypełniana podczas uruchamiania danymi. Podobna konfiguracja jest dostępna dla bazy danych MySQL, jeśli wymagana jest trwała konfiguracja bazy danych. Zależność dla łącznika/J, sterownika MySQL JDBC, jest już zawarta w plikach pom.xml.
Przykładowe użycie petClinic
Aby uzyskać szczegółowe informacje o implementacji, zobacz nasze rozwidlenie PetClinic. Przykłady odwołują się do kodu źródłowego zgodnie z potrzebami.