Wstępnie zdefiniowane zadania dotyczące modernizacji narzędzia GitHub Copilot dla deweloperów języka Java

W tym artykule opisano wstępnie zdefiniowane zadania dostępne dla deweloperów języka Java na potrzeby modernizacji narzędzia GitHub Copilot.

Wstępnie zdefiniowane zadania przechwytują najlepsze rozwiązania branżowe dotyczące korzystania z usług platformy Azure. Obecnie modernizacja narzędzia GitHub Copilot oferuje wstępnie zdefiniowane zadania, które obejmują typowe scenariusze migracji. Te zadania dotyczą następujących tematów i nie tylko:

  • Zarządzanie sekretami
  • Integracja kolejki wiadomości
  • Monitoring
  • Zarządzanie tożsamościami

Note

Ta lista rośnie w oparciu o opinie klientów i zmieniające się potrzeby chmury.

Lista zadań

Modernizacja narzędzia GitHub Copilot obsługuje obecnie następujące wstępnie zdefiniowane zadania:

  • RabbitMQ na Azure Service Bus

    Te zadania przekształcają aplikacje Java korzystające z RabbitMQ — za pośrednictwem Spring Advanced Message Queuing Protocol (AMQP), Spring Java Message Service (JMS) lub Java EE / Jakarta EE przez AMQP — tak, aby zamiast nich korzystały z zarządzanej usługi Azure Service Bus, zachowując wzorce komunikacyjne i semantykę oraz jednocześnie domyślnie włączając bezpieczne uwierzytelnianie.

  • Tożsamości zarządzane na potrzeby migracji bazy danych na platformę Azure

    Oferty baz danych platformy Azure — Azure SQL Server, Azure Database for MySQL, Azure Database for PostgreSQL, Azure Cosmos DB for Cassandra API i Azure Cosmos DB for MongoDB — obsługują bezpieczne logowanie przy użyciu tożsamości zarządzanej. Podczas migracji aplikacji z lokalnej bazy danych do zarządzanej bazy danych w chmurze platformy Azure to zadanie ułatwia przygotowanie bazy kodu do uwierzytelniania tożsamości zarządzanej do bazy danych.

  • Tożsamości zarządzane na potrzeby migracji poświadczeń na platformie Azure

    Uwierzytelnianie przy użyciu parametrów połączenia wprowadza luki w zabezpieczeniach i obciążenie związane z konserwacją. To zadanie przekształca aplikacje Java, aby używać uwierzytelniania za pomocą zarządzanej tożsamości Azure dla usług przesyłania komunikatów, takich jak Azure Event Hubs i Azure Service Bus. Podczas integracji z bibliotekami klienta tożsamości firmy Microsoft kod nie musi już przechowywać poufnych parametrów połączenia ani sygnatur dostępu współdzielonego w plikach konfiguracji.

  • Usługi Amazon Web Services (AWS) S3 do usługi Azure Storage Blob

    Podczas migracji usługi z platformy AWS na platformę Azure możesz przejść z usługi AWS S3 do usługi Azure Storage Blob. To zadanie ułatwia konwertowanie logiki kodu, która współdziała z usługą AWS S3 w logikę kodu, która działa z obiektem blob usługi Azure Storage, przy zachowaniu tej samej semantyki.

    Ta wiedza na temat migracji została opracowana we współpracy z zespołem Azure Storage, korzystając z głębokiej wiedzy na temat interfejsów API Blob Storage, wzorców uwierzytelniania i zachowań specyficznych dla platformy, aby zapewnić, że wskazówki odzwierciedlają najlepsze rozwiązania klasy produkcyjnej.

  • Rejestrowanie do pliku lokalnego

    Usługi hostingu platformy Azure domyślnie integrują się z usługą Azure Monitor, zbierając dane wyjściowe dziennika w konsoli i umożliwiając wykonywanie zapytań i monitorowanie ich. Jednocześnie rejestrowanie plików w środowisku chmury nie jest zalecane, ponieważ wymaga dodatkowej rotacji i transferu dzienników. To zadanie ułatwia konwertowanie rejestrowania opartego na plikach w aplikacji na rejestrowanie oparte na konsoli, dzięki czemu jest gotowy do integracji z usługą Azure Monitor.

  • Lokalne operacje we/wy na plikach na punktach montowania udziałów plików usługi Azure Storage

    Usługi hostingowe platformy Azure zapewniają elastyczność w zakresie aprowizacji, skalowania, przełączania awaryjnego i nie tylko. Jednocześnie system plików dla danego środowiska uruchomieniowego aplikacji jest przejściowy. Jeśli aplikacja odczytuje dane z pliku lokalnego lub zapisuje je w pliku lokalnym, to zadanie ułatwia zidentyfikowanie takich przypadków i przekonwertowanie ich na ujednolicony dostęp do ścieżki instalacji. Dzięki temu możesz zamontować udział plików Azure Storage w określonej ścieżce, umożliwiając aplikacji udostępnianie i trwałe przechowywanie danych między różnymi replikami bez obaw o przenoszenie, awarię czy podobne problemy.

  • Java Poczta do Azure Communication Services

    Migracja aplikacji z zależnościami protokołu SMTP (Simple Mail Transfer Protocol) może być trudna, ponieważ nie wszystkie środowiska platformy Azure obsługują żądania wychodzące na porcie 25. To zadanie pomaga przekonwertować aplikację, która wysyła pocztę za pośrednictwem protokołu SMTP w celu korzystania z usług Azure Communication Services, która jest w pełni zgodna ze środowiskami hostingu platformy Azure.

  • Wpisy tajne i zarządzanie certyfikatami w usłudze Azure Key Vault

    To zadanie ułatwia migrowanie poufnych zasobów zabezpieczeń do usługi Azure Key Vault. Obsługuje zarówno stałe hasła w kodzie źródłowym, jak i zarządzane w magazynach kluczy Java lokalne certyfikaty TLS/mTLS. W przypadku wpisów tajnych identyfikuje podejrzane teksty wpisów tajnych i konwertuje je na logikę pobierającą dane z usługi Azure Key Vault. W przypadku certyfikatów przenosi aplikację z zarządzania certyfikatami lokalnie do korzystania z dostawcy JCA (Java Cryptography Architecture) usługi Azure Key Vault przy zachowaniu tej samej funkcjonalności i stanu zabezpieczeń.

  • Operacje kryptograficzne w usłudze Azure Key Vault

    Java aplikacje, które wykonują operacje kryptograficzne lokalnie zarządzają kluczami poza scentralizowaną usługą inspekcji. To zadanie migruje lokalną logikę kryptografii do Azure Key Vault, dzięki czemu operacje podpisywania, weryfikacji, szyfrowania i odszyfrowywania są uruchamiane względem kluczy, które nigdy nie opuszczają magazynu, zachowując istniejące zachowanie aplikacji.

  • Uwierzytelnianie użytkownika w Microsoft Entra ID

    Aplikacje Java często używają rozwiązań uwierzytelniania opartych na protokole LDAP, które nie są łatwo migrowane na platformę Azure. To zadanie ułatwia przejście mechanizmu uwierzytelniania użytkownika lokalnego na taki, który używa identyfikatora Entra firmy Microsoft do uwierzytelniania.

  • Produkty baz danych do oferty baz danych platformy Azure

    Java aplikacje działające w lokalnych bazach danych — w tym Oracle, IBM Db2, Informix i Sybase Adaptive Server Enterprise (ASE) — można migrować do Azure Database for PostgreSQL lub Azure SQL Database w celu uzyskania w pełni zarządzanego środowiska chmury. Te zadania aktualizują aplikację tak, aby łączyła się z docelową bazą danych Azure przy użyciu bezhasłowego uwierzytelniania Microsoft Entra ID, oraz dostosowują specyficzną dla źródła składnię SQL, typy danych i funkcje do dialektu docelowego, dzięki czemu aplikacja zachowuje to samo działanie na platformie Azure.

  • Usługa AWS Secret Manager w usłudze Azure Key Vault

    Przejście z usługi AWS Secret Manager do usługi Azure Key Vault wymaga ponownego skonfigurowania sposobu obsługi poufnych informacji przez aplikację. To zadanie przekształca wszystkie aspekty zarządzania tajnym w kodzie — od tworzenia i pobierania po aktualizowanie i usuwanie — przy wykorzystaniu kompleksowych funkcji zabezpieczeń i modeli uwierzytelniania usługi Azure Key Vault.

  • Usługa ActiveMQ do usługi Azure Service Bus

    Aplikacje utworzone na platformie Apache ActiveMQ można zmodernizować w celu korzystania z zarządzanej usługi obsługi komunikatów platformy Azure. To zadanie konwertuje producentów komunikatów ActiveMQ, konsumentów, fabryk połączeń i interakcji kolejek/tematów na ich odpowiedniki usługi Azure Service Bus, wdrażając najlepsze rozwiązania dotyczące niezawodności i uwierzytelniania w środowiskach chmury.

  • Amazon Web Services (AWS) Simple Queue Service (SQS) do Azure Service Bus

    Przejście z usługi AWS SQS do usługi Azure Service Bus obejmuje ponowne wdrożenie operacji kolejki i wzorców obsługi komunikatów. To zadanie tłumaczy konstrukcje kodu specyficzne dla SQS na ich odpowiedniki usługi Azure Service Bus, zachowując krytycznych semantyk przesyłania komunikatów, takich jak dostarczanie co najmniej raz, przesyłanie wsadowe komunikatów oraz zachowania limitu czasu widoczności, oraz wprowadzając rozszerzone funkcje zabezpieczeń platformy Azure.

  • Projekt Ant/Eclipse w projekcie Maven

    Projekty Java budowane za pomocą Apache Ant lub jako projekty w środowisku Eclipse IDE zależą od skryptów imperatywnych lub metadanych specyficznych dla IDE, co komplikuje zarządzanie zależnościami i utrudnia zautomatyzowane kompilacje bez interfejsu graficznego. Te zadania konwertują projekt Ant lub Eclipse na projekt Maven, który kompiluje się spójnie z dowolnego środowiska, z zależnościami rozwiązanymi za pośrednictwem narzędzia Maven i układem projektu zgodnym z konwencjami maven, zachowując jednocześnie niezmieniony kod źródłowy.

  • Rozwiązania pamięci podręcznej dla Azure Managed Redis

    Aplikacje często korzystają z różnych rozwiązań buforowania — od bibliotek w pamięci po systemy rozproszone (takie jak Infinispan, SwarmCache i Memcached) — które nie mają bezproblemowej integracji Azure i scentralizowanej skalowalności lub zabezpieczeń. To zadanie modernizuje warstwę buforowania przez migrację tych implementacji do Azure Managed Redis (lub wycofywanej usługi Azure Cache for Redis), umożliwiając skalowalność natywną dla chmury, ujednolicone zarządzanie oraz zwiększone bezpieczeństwo dzięki bezhasłowemu uwierzytelnianiu Microsoft Entra ID, przy zachowaniu dotychczasowego sposobu działania pamięci podręcznej.

Zobacz także

Szybki start: tworzenie i stosowanie własnych umiejętności