Różnice między Apigee Edge i Apigee X

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

W tym temacie opisujemy, czym platforma Apigee X (czasem nazywana po prostu „Apigee”) różni się od Apigee Edge. Te informacje są przeznaczone dla obecnych klientów Apigee Edge, którzy rozważają migrację do Apigee X.

Więcej informacji o funkcjach Apigee X znajdziesz w opisie funkcji Apigee X.

Poniższa tabela zawiera listę usług zarządzania Apigee API, które są porównywane w tym temacie:

Produkt Gdzie jest hostowana Zarządzane przez
Apigee Edge dla chmury publicznej Chmura Apigee Apigee
Apigee Edge dla Private Cloud Prywatne centrum danych klienta. Klient
Apigee X Google Cloud Apigee
Hybrydowe Apigee Google Cloud i prywatne centrum danych klienta Apigee zarządza platformą zarządzania, a klient zarządza platformą środowiska wykonawczego.

Porównanie funkcji Apigee Edge z Apigee X

W poniższych sekcjach porównano funkcje chmury publicznej i prywatnej usługi Apigee Edge z dostępnością funkcji w Apigee X i w wersji hybrydowej.

Pamiętaj, że limity Apigee X różnią się też od limitów Apigee Edge.

Podsumowanie obecnych różnic w funkcjach

W poniższej tabeli opisano różnice na poziomie funkcji między Apigee X (i hybrydowym) a Apigee Edge dla platform chmur publicznych i prywatnych.

Funkcja Apigee Edge Obsługa w Apigee X i modelu hybrydowym
Wersje proxy interfejsu API

Niezmienne po wdrożeniu

Aktywne kontrole stanu Obsługiwane w przypadku zewnętrznych zarządzanych grup instancji (które używają maszyn wirtualnych). Nieobsługiwane w przypadku korzystania z usługi Private Service Connect. Więcej informacji o typach routingu znajdziesz w artykule o konfigurowaniu routingu.
Adapter Apigee do Istio Wycofane: zalecamy użycie adaptera Apigee dla Envoy.
Firmy i programiści

Dostępne jest podobne, ale nieidentyczne rozwiązanie. Przeczytaj artykuł o używaniu grup aplikacji do porządkowania własności aplikacji.

CwC (kod z konfiguracją)

Zaplanowane

Wdrożenia
  • Wdrożenia asynchroniczne
  • Pobieram stan wdrożenia na podstawie ostatniego „zameldowania” platformy środowiska wykonawczego z platformą zarządzania
Środowiska
  • Obsługa grup środowisk
  • Samoobsługa przy użyciu interfejsu użytkownika i interfejsów API Apigee
  • Większa elastyczność obsługi topologii
  • Pod MP może obsługiwać tylko jedno środowisko

Więcej informacji znajdziesz w artykule Informacje o środowiskach i grupach środowisk.

Hostowane cele

Użyj Cloud Run lub Cloud Functions

Obsługa nazwy pola nagłówka HTTP/1.1 Konwertuje nazwy pól nagłówka HTTP/1.1 na małe litery podczas przekazywania ich do backendu. W Apigee Edge wielkość liter nazw pól nagłówka jest zachowywana.
Role uprawnień do szczegółowej kontroli dostępu na podstawie ról

Zaplanowane

Ścieżka JSONPath wykorzystująca [@.length-x]

Używanie [@.length-x] w wyrażeniach JSONPath nie jest obsługiwane w Apigee X. Specyfikacja JSONPath wskazuje, że wyrażenia są zależne od podstawowego języka skryptów. length-x to konstrukcja JavaScript, a nie Java. Komponent [@.length-x] nie został zaimplementowany jako część specyfikacji. W Apigee X wyrażenie [@.length-x] jest zastępowane przez schemat indeksowania ([-x]).

W tym przykładzie:

{
    "books": [
      {
        "name": "A",
      },
      {
        "name": "B",
      }
    ]
}

Dane wejściowe: $.books[@.length-1] zwracają {“name”: “B”} w Apigee Edge i zwracają [{“name”: “B”}] w Apigee X.

Magazyny kluczy/magazyny zaufania

W kierunku północnym zarządzane jako obiekty tajne Kubernetes

KVM
  • Zaszyfrowane KVM w zakresie środowiska możesz tworzyć w interfejsie Apigee. Serwery KVM są zawsze szyfrowane. Nie możesz dodawać, aktualizować ani wyświetlać wpisów KVM w interfejsie użytkownika.
  • Aby ukryć informacje o KVM w sesji debugowania (śledzenia), użyj atrybutu private. ze wszystkimi zmiennymi podczas uzyskiwania dostępu do KVM za pomocą polecenia GET. Jeśli atrybut private. nie jest używany, kluczowa maszyna wirtualna jest nadal szyfrowana. Jednak informacje KVM będą widoczne w sesji śledzenia debugowania jako odszyfrowane i nie zostanie zgłoszony żaden wyjątek.
  • Wpisami KVM możesz zarządzać za pomocą interfejsu keyvaluemaps.entries API lub zasady KeyValueMapOperations.
  • Zestawów właściwości możesz używać w niektórych tych samych przypadkach co w przypadku KVM. Więcej informacji znajdziesz w sekcji Korzystanie z zestawów właściwości.
  • Element <MapName> umożliwia zasady KeyValueMapOperations określanie, którego KVM ma być używane dynamicznie w czasie działania.

Więcej informacji o tworzeniu maszyn wirtualnych w interfejsie znajdziesz w artykule o korzystaniu z map klucz-wartość. Przeczytaj też sekcję Uzyskiwanie dostępu do danych konfiguracji, aby dowiedzieć się, jak wybrać odpowiedni mechanizm trwałości danych.

Microgateway Zamiast niej zalecamy użycie Adaptera Apigee dla Envoy.
Zarabianie Zobacz różnice w sposobie zarabiania
Node.js
  • Serwery proxy interfejsu Node.js API nie są obsługiwane.
  • Apigee zaleca hostowanie aplikacji Node.js jako osobnych kontenerów w Kubernetes (tym samym lub innym klastrze)
mTLS w kierunku północnym Zaplanowane
OAuth Nowe zasady unieważniania OAuthv2 według identyfikatora użytkownika, identyfikatora aplikacji lub obu tych kryteriów. Ta zasada zastępuje interfejs Apigee Edge API w celu unieważniania tokenów OAuth2.
Zasady
  • Nowe zasady:
    • Zasada AssertCondition: ocenia instrukcję warunkową w czasie działania w przepływach żądań lub odpowiedzi.
    • Zasada CORS: zezwala na interakcje z zasobami z domen innych niż domeny pochodzenia na potrzeby wywołań XMLHttpRequest (XHR) wykonywanych na stronie internetowej.
    • Zasada DataCapture: zastępuje zasadę StatisticsCollector.
    • Zasada ExternalCallout: wysyła żądania gRPC do serwera gRPC w celu zaimplementowania niestandardowego zachowania nieobsługiwanego przez zasady Apigee.
    • Zasada GraphQL: analizuje ładunki w GraphQL na zmienne przepływu wiadomości, weryfikuje żądania GraphQL na podstawie schematu lub na oba te sposoby.
    • Zasada PublishMessages: publikuje w temacie Google Cloud Pub/Sub informacje o przepływie serwera proxy interfejsu API.
    • Zasada Anulowanie OAuthv2: unieważnianie według identyfikatora użytkownika, identyfikatora aplikacji lub obu tych kryteriów.
    • Zasada TraceCapture: dodaje dodatkowe zmienne do danych śledzenia w środowisku wykonawczym Apigee.
  • Nieobsługiwane zasady:
    • Zasada StatisticsCollector (zastąpiona nową zasadą DataCapture)
  • Zmienione zasady:
reasonPhrase Nieobsługiwane.
Materiały Nie można używać zasobów na poziomie organizacji
Role i uprawnienia
  • Zarządzane za pomocą usługi IAM w konsoli Google Cloud
  • Dostępne są gotowe, wyselekcjonowane role
  • Możesz utworzyć role niestandardowe, które mogą obejmować inne uprawnienia Google Cloud

Więcej informacji znajdziesz w artykule Użytkownicy i role.

Sense Użyj Advanced API Security.
Usługi SOAP w kreatorze tworzenia serwera proxy Nieobsługiwane. Zobacz wsdl2apigee, projekt typu open source udostępniający narzędzia SOAP do użycia z Apigee.
Sesje śledzenia i debugowania Zobacz Różnice w danych śledzenia.
Hosty wirtualne

W przypadku hybrydowego środowiska Apigee:

  • Ruch przychodzący jest wdrażany za pomocą Anthos Service Mesh.
  • Klucze i certyfikaty są wdrażane bezpośrednio w Kubernetes.

W przypadku Apigee X:

  • Każda instancja udostępnia punkt końcowy HTTPS za pomocą certyfikatu podpisanego samodzielnie. Urząd certyfikacji możesz pobrać, wysyłając zapytanie do organizacji.

Różnice w danych śledzenia

W tabeli poniżej porównano różnice w działaniu usługi Trace w Apigee X i w hybrydowej usłudze Apigee Edge Cloud:

Funkcja Apigee Edge w chmurze Apigee X i model hybrydowy
Terminowość Czas rzeczywisty, synchroniczny Niewielkie opóźnienie; asynchroniczne
Nazwa/identyfikator sesji Przyjmuje nazwę sesji użytkownika Nie akceptuje nazwy sesji użytkownika
Filtry Podstawowa obsługa filtrów, na przykład filtrowanie parametrów nagłówków i zapytań Obsługa złożonych reguł filtrowania, w tym operacji logicznych ORAZ i LUB. Dostęp do dowolnej zmiennej przepływu wymienionej w dokumentacji zmiennych przepływu. Składnia jest taka sama jak w przypadku warunków określonych w dokumentacji warunków.
Limit czasu sesji

Określa długość sesji debugowania oraz czas przechowywania danych.

Wartość domyślna to 20 minut zainicjowanych za pomocą wywołań interfejsu API i 10 minut podczas inicjowania w UI.

Określa tylko długość sesji debugowania. Punkt początkowy to moment, w którym procesor wiadomości otrzymuje żądanie uruchomienia w trybie debugowania.

Wartość domyślna to 5 minut, jeśli sesja została zainicjowana za pomocą interfejsu API, i 10 minut, jeśli została zainicjowana w interfejsie.

Dane są przechowywane przez 24 godziny, a potem sieć hybrydowa automatycznie je usuwa.

Prawidłowość sesji

Długość czasu, w którym żądanie utworzenia sesji jest prawidłowe. Jeśli sesja debugowania nie rozpocznie się w tym czasie, synchronizatory mogą zignorować żądanie utworzenia sesji. Pamiętaj, aby synchronizować zegary synchronizatorów zgodnie z opisem w sekcji Wymagania wstępne.
Liczba żądań śledzenia Maksymalnie 20 na procesor wiadomości Domyślnie jest to 10 na procesor wiadomości. Maksymalna liczba to 15.
API Apigee Edge w chmurze Apigee X
Apigee X udostępnia interfejsy Debug Session API i interfejs Debug Session Data API, ale nie obsługuje tych interfejsów API za pomocą interfejsów Apigee X:
Zatrzymywanie sesji debugowania

Usuwanie określonych transakcji

Różnice w generowaniu przychodu

W tabeli poniżej znajdziesz porównanie kluczowych funkcji usługi Apigee Edge Monetization i Apigee X Monetization.

Zarabianie na Apigee Edge Zarabianie w Apigee X/zarabianie hybrydowe
Abonamenty są powiązane z pakietami produktów interfejsu API, które można dołączyć do wielu usług API Abonamenty są powiązane z usługami API (relacja jeden do jednego)
Plany taryfowe dla deweloperów aplikacji Deweloperzy aplikacji kupują produkty API
Limity są zarządzane na poziomie serwera proxy interfejsu API Limity są zarządzane na poziomie usługi API (na poziomie firmy)
Opublikowane plany stawek mogą tylko wygasnąć – nie można ich edytować ani usuwać Opublikowane plany stawek mogą wygasnąć, zmienić je, przenieść do wersji roboczej lub usunąć
Złożona konfiguracja (bez kreatora ani narzędzia podglądu) Uproszczona konfiguracja planów stawek za pomocą kreatora i narzędzia podglądu
Zasada MonetizationLimitsCheck blokuje dostęp po przetworzeniu pierwszego wywołania interfejsu API, jeśli deweloper aplikacji nie kupił subskrypcji Zasada MonetizationLimitsCheck blokuje dostęp natychmiast, jeśli deweloper aplikacji nie kupił subskrypcji lub przekroczy limit
Dane o przychodach z transakcji można rejestrować za pomocą zmiennych niestandardowych w zasadach rejestrowania transakcji. Apigee automatycznie rejestruje dane dotyczące zarabiania, a dane o przychodach dotyczące transakcji można zastąpić za pomocą zasady DataCapture. Więcej informacji znajdziesz w sekcji Zbieranie danych dotyczących zarabiania.
Konta przedpłacone i opłacane można konfigurować zarówno dla deweloperów, jak i dla abonamentów. Konta przedpłacone i opłacane można konfigurować tylko dla deweloperów.

Które funkcje Apigee Edge nie są obsługiwane w Apigee X?

Google nie będzie obsługiwać tych funkcji:

  • Rozszerzenia Apigee Edge
  • Magazyn specyfikacji OpenAPI
  • Interfejsy API do wyszukiwania lub unieważniania tokenów dostępu OAuth (ponieważ tokeny są zaszyfrowane).
  • Zasada OAuth v1 lub OAuth OAuthv1.0a
  • Trireme (aktualizacja 10.10.2019 r.)
  • Nagłówki z prefiksem „X-Apigee-” nie są obsługiwane w Apigee X i są usuwane z żądań i odpowiedzi przed wysłaniem ich do celów i klientów.

Porównanie interfejsów API

Ogólnie większość interfejsów API Apigee Edge ma swoje odpowiedniki. Ta sekcja zawiera:

Podsumowanie zmian za pomocą interfejsu API

Poniżej znajdziesz zmiany w działaniu wszystkich interfejsów Apigee X API w porównaniu z interfejsami Apigee Edge.

Sposób działania Interfejsy API Apigee Edge Interfejsy API Apigee X
Domena podstawowa api.enterprise.apigee.com apigee.googleapis.com
Typy multimediów application/json
application/xml
application/json
Uwierzytelnianie OAuth2, SAML, Basic OAuth2
Sygnatury czasowe w kluczach Format int64
{
  "createdAt": 1234,
  "lastModifiedAt": 5678
}
Format String
{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
Struktura parametru zapytania expand=false
[
        "helloworld",
        "weather"
      ]
{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}
Parametry zapytania poprzedzone znakiem podkreślenia Obsługiwane (_optimal=true) Nieobsługiwane (optimal=true)
Właściwości w ładunkach:
  • created_by
  • modified_by
  • self
Potwierdzone Nieobsługiwane
Wartości domyślne w ładunkach Uwzględniono Nie uwzględniono
Struktura obsługi błędów
{
        "code": "...",
        "message": "..",
        "contexts": []
      }
{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}
Odpowiedź dotycząca usunięcia pamięci podręcznej Zwraca: 200 OK i szczegóły pamięci podręcznej Zwroty: 204 No Content
Operacje interfejsu API pamięci podręcznej Opcje Lista, Utwórz, Pobierz, Zaktualizuj, usuń, wyczyść wszystko i wyczyść opcje. Tylko Lista i Usuń. Pamięć podręczna L1 o ograniczonym czasie ważności jest tworzona automatycznie podczas wdrażania serwera proxy interfejsu API. Więcej informacji znajdziesz w artykule o dokumentacji wewnętrznej.

Różnice między interfejsami API Apigee Edge i Apigee X

Podsumowanie zmian korzystających z interfejsu API zawiera ogólne informacje o różnicach między interfejsami Apigee Edge API i Apigee X API. W tabeli poniżej znajdziesz konkretne różnice dotyczące interfejsów API wskaźników:

Funkcja Interfejsy API Apigee Edge Interfejsy API Apigee X
Punkt końcowy interfejsu API api.enterprise.apigee.com apigee.googleapis.com
Codzienne e-maile ze statystykami Brak obsługiwanych interfejsów API
Interfejs Async Query List API Pobierz listę asynchronicznych zapytań analitycznych W odpowiedzi pominięto właściwość userId. Patrz Metoda: organizations.environments.queries.list.
Interfejsy API raportów niestandardowych Interfejs Reports API Usunięto z odpowiedzi właściwości createdBy i lastModifiedBy. Zobacz Interfejs Reports API.

Nieobsługiwane interfejsy Apigee Edge API

W tabeli poniżej znajdziesz listę nieobsługiwanych interfejsów API Apigee Edge (które nie mają odpowiednika Apigee X API).

Kategoria interfejsu API Nieobsługiwane interfejsy Apigee Edge API
Monitorowanie interfejsów API Brak obsługiwanych interfejsów API
Proxy interfejsów API
  • Wymuś wycofanie wdrożenia serwera proxy interfejsu API
  • Pobranie zależności npm
  • Zarządzaj modułami npm
Audyty Użyj interfejsu Stackdriver Logging API.
Logi w pamięci podręcznej Brak obsługiwanych interfejsów API
Firmy Brak obsługiwanych interfejsów API
Aplikacje firmy Brak obsługiwanych interfejsów API
Rodzina aplikacji firmy Brak obsługiwanych interfejsów API
Klucze aplikacji firmy Brak obsługiwanych interfejsów API
Sesje debugowania
  • Nie można zatrzymać sesji śledzenia
  • Nie można usunąć pojedynczych transakcji

Więcej informacji znajdziesz w artykule Różnice w danych śledzenia.

Aplikacja dewelopera Pobieranie liczby zasobów interfejsu API
Rodzina aplikacji dewelopera Brak obsługiwanych interfejsów API
Rozszerzenia Brak obsługiwanych interfejsów API
Magazyn kluczy: Truststore Testowanie magazynu kluczy lub magazynu zaufanych certyfikatów
LDAP Brak obsługiwanych interfejsów API
Zarabianie Brak obsługiwanych interfejsów API
OAuth v2 Brak obsługiwanych interfejsów API
Zasady Brak obsługiwanych interfejsów API
Pliki zasobów
  • Zakres wersji serwera proxy interfejsu API
  • Zakres organizacji
Sense Brak obsługiwanych interfejsów API
Użytkownicy i role użytkowników Używaj interfejsów API związanych z zarządzaniem tożsamościami i dostępem Google zgodnie z opisem w sekcji Zarządzanie użytkownikami, rolami i uprawnieniami za pomocą interfejsów API
Hosty wirtualne Brak obsługiwanych interfejsów API

Porównanie Apigee Edge w chmurze Private Cloud i usługi hybrydowej Apigee

Tabela poniżej zawiera porównanie Apigee Edge w chmurze Private Cloud i usługi hybrydowej Apigee:

Usługa Obszar usługi lub funkcji Apigee
Apigee Edge dla chmury prywatnej Hybrydowe Apigee
Analytics Serwery Qpid i Postgres Pod zbierający dane w środowisku wykonawczym korzysta z fluentd i UDCA (Universal Data Collection Agent) do zbierania statystyk i przesyłania danych do UAP (Unified Analytics Platform) w platformie zarządzania.
Brama serwera proxy interfejsu API procesor komunikatów Procesor wiadomości (MP) przetwarza przychodzące żądania. Interfejsy MP są zaimplementowane jako co najmniej 1 skonteneryzowana aplikacja w środowisku wykonawczym.
Trwałość Węzeł lub pierścień Cassandra Cassandra zapewnia trwałość funkcji KMS, KVM, limitu i pamięci podręcznej.
Wdrożenie ZooKeeper Synchronizator zapewnia aktualność konfiguracji serwera proxy interfejsu API, informacji o środowisku i innych danych między platformą zarządzania a płaszczyzną środowiska wykonawczego.
Administracyjny interfejs użytkownika Interfejs Apigee Edge jest hostowany na serwerze zarządzania Interfejs Apigee jest hostowany w platformie zarządzania.
Równoważenie obciążenia Router Kontroler Istio Ingress przekazuje żądania do skonteneryzowanej aplikacji procesora wiadomości (MP) w środowisku wykonawczym.
Interfejsy API Serwer zarządzania Interfejsy API Apigee X są dostępne przez serwer zarządzania i MART. MART komunikuje się z lokalnym magazynem danych Cassandra i pełni funkcję dostawcy interfejsu API dla interfejsów API Apigee X w celu uzyskiwania dostępu do encji danych środowiska wykonawczego i zarządzania nimi.
Wskaźniki Każdy komponent skonfigurowany za pomocą JMX Zarządzane przez jeden serwer Prometheus na klaster dla wszystkich usług.