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

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

W tym artykule opisujemy różnice między Apigee X (czasami nazywaną po prostu „Apigee”) a 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 podsumowaniu funkcji Apigee X.

W tej tabeli znajdziesz usługi Apigee API Management, które są porównywane w tym artykule:

Produkt Miejsce hostowania Zarządzane przez
Apigee Edge Public Cloud chmura Apigee, Apigee
Apigee Edge Private Cloud Prywatne centrum danych klienta. Klient
Apigee X Google Cloud Apigee
Apigee hybrid 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 i Apigee X

W kolejnych sekcjach porównujemy funkcje Apigee Edge Public/Private Cloud z dostępnością funkcji w Apigee X i hybrydowej usłudze Apigee.

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

Podsumowanie różnic między obecnymi funkcjami

W tabeli poniżej opisano różnice na poziomie funkcji między Apigee X (i hybrydową usługą Apigee) a platformami Apigee Edge na chmurę publiczną i prywatną.

Funkcja Apigee Edge Obsługa w Apigee X i hybrydowej usłudze Apigee
Wersje proxy interfejsu API

Po wdrożeniu nie można go zmienić.

Aktywne kontrole stanu Obsługiwane w przypadku zewnętrznych zarządzanych grup instancji (które korzystają z maszyn wirtualnych). Nieobsługiwane w przypadku korzystania z Private Service Connect. Informacje o typach routingu znajdziesz w artykule Konfigurowanie routingu.
Apigee Adapter for Istio Wycofane: zalecamy używanie Apigee Adapter for Envoy.
Firmy i deweloperzy

Dostępne jest podobne, ale nie identyczne rozwiązanie. Zobacz Używanie grup aplikacji do organizowania własności aplikacji.

CwC (Code with Config)

Planowane

Wdrożenia
  • Wdrożenia asynchroniczne
  • Pobieranie stanu wdrożenia zależy od ostatniego czasu, w którym platforma środowiska wykonawczego „zarejestrowała się” na platformie zarządzania.
Środowiska
  • Obsługa grup środowisk
  • Self-service za pomocą interfejsu Apigee i interfejsów API
  • Większa elastyczność w zakresie topologii wyświetlania
  • Moduł MP może obsługiwać tylko jedno środowisko

Więcej informacji znajdziesz w artykule Środowiska i grupy środowisk.

Hostowane miejsca docelowe

Użyj Cloud Run lub Cloud Functions.

Obsługa nazw pól nagłówka HTTP/1.1 Konwertuje nazwy pól nagłówka HTTP/1.1 na małe litery, gdy są przekazywane do backendu. W Apigee Edge wielkość liter w nazwach pól nagłówka jest zachowywana.
Role uprawnień do szczegółowej kontroli dostępu opartej na rolach

Planowane

JSONPath z użyciem [@.length-x]

Używanie znaku [@.length-x] w wyrażeniach JSONPath nie jest obsługiwane w Apigee X. Specyfikacja JSONPath mówi, że wyrażenia zależą od bazowego języka skryptowego. length-x to konstrukcja JavaScriptu, a nie Javy, a [@.length-x] nie została zaimplementowana w ramach specyfikacji. W Apigee X wyrażenie [@.length-x] zostało zastąpione przez schemat indeksowania ([-x]).

W odniesieniu do naszego przykładu:

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

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

Magazyny kluczy/magazyny zaufanych certyfikatów

Zarządzanie ruchem wychodzącym jako obiektami tajnymi Kubernetes

KVM
  • W interfejsie Apigee możesz tworzyć zaszyfrowane maszyny KVM o zakresie środowiska. KVM-y są zawsze szyfrowane. Nie możesz dodawać, aktualizować ani wyświetlać wpisów KVM w interfejsie.
  • Użyj atrybutu private. ze wszystkimi zmiennymi podczas uzyskiwania dostępu do KVM za pomocą polecenia GET, aby ukryć informacje o KVM w sesji debugowania (śledzenia). Jeśli atrybut private. nie jest używany, KVM jest nadal szyfrowany, ale informacje o KVM będą wyświetlane w sesji debugowania (Trace) w postaci odszyfrowanej i nie będzie zgłaszany żaden wyjątek.
  • Wpisami w mapie wartości kluczy możesz zarządzać za pomocą interfejsu keyvaluemaps.entries API lub zasad KeyValueMapOperations.
  • Zestawy właściwości możesz wykorzystywać w niektórych przypadkach użycia, w których stosuje się klucze KVM. Zobacz Korzystanie z zestawów właściwości.
  • Element <MapName> umożliwia zasadzie KeyValueMapOperations dynamiczne określanie w czasie działania, którego KVM ma używać.

Więcej informacji o tworzeniu map klucz-wartość w interfejsie znajdziesz w artykule Korzystanie z map klucz-wartość. Więcej informacji o wybieraniu odpowiedniego mechanizmu utrwalania danych znajdziesz w artykule Dostęp do danych konfiguracyjnych.

Microgateway Zamiast tego zalecamy korzystanie z Apigee Adapter for Envoy.
Zarabianie Zobacz Różnice w zarabianiu
Node.js
  • Serwery proxy interfejsu API Node.js nie są obsługiwane.
  • Apigee zaleca hostowanie aplikacji Node.js jako osobnych kontenerów w Kubernetes (w tym samym lub innym klastrze).
Północny mTLS Obsługiwane przez systemy równoważenia obciążenia Google Cloud. Zobacz Wzajemne uwierzytelnianie TLS w Apigee X w przypadku ruchu przychodzącego przy użyciu zewnętrznego systemu równoważenia obciążenia aplikacji.
OAuth Nowa zasada RevokeOAuthv2 cofa dostęp na podstawie identyfikatora użytkownika, identyfikatora aplikacji lub obu tych identyfikatorów. Ta zasada zastępuje interfejs Apigee Edge API służący do unieważniania tokenów OAuth2.
Zasady
  • Nowe zasady:
    • Zasada AssertCondition: w czasie działania ocenia instrukcję warunkową w przepływach żądania lub odpowiedzi.
    • Zasady CORS: umożliwiają wywoływanie JavaScript XMLHttpRequest (XHR) wykonywanych na stronie internetowej w celu interakcji z zasobami z domen innych niż źródłowe.
    • Zasady DataCapture: zastępują zasady StatisticsCollector.
    • Zasada ExternalCallout: wysyła żądania gRPC do serwera gRPC, aby wdrożyć niestandardowe działanie, które nie jest obsługiwane przez zasady Apigee.
    • Zasady GraphQL: analizują ładunki GraphQL na zmienne przepływu wiadomości, weryfikują żądania GraphQL względem schematu lub wykonują obie te czynności.
    • Zasady PublishMessages: publikują informacje o przepływie proxy interfejsu API w temacie Google Cloud Pub/Sub.
    • Zasady RevokeOAuthv2: wycofują dostęp na podstawie identyfikatora użytkownika, identyfikatora aplikacji lub obu tych identyfikatorów.
    • Zasady TraceCapture: dodają dodatkowe zmienne do danych śledzenia środowiska wykonawczego Apigee.
  • Zasady nieobsługiwane:
    • Zasady StatisticsCollector (zastąpione przez nowe zasady 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ą wybrane gotowe role
  • Możesz tworzyć role niestandardowe, które mogą obejmować inne uprawnienia Google Cloud.

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

Sense Używaj Advanced API Security.
Usługi SOAP w kreatorze tworzenia serwera proxy Nieobsługiwane. Zapoznaj się z projektem open source wsdl2apigee, który udostępnia narzędzia SOAP do używania z Apigee.
Sesje śledzenia/debugowania Zobacz różnice w stosunku do logu czasu.
Wirtualni gospodarze

W przypadku Apigee Hybrid:

  • Wejście jest realizowane za pomocą bramy wejściowej Apigee.
  • 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 dla certyfikatu można pobrać, wysyłając zapytanie do organizacji.

Różnice w usłudze Trace

W tabeli poniżej porównaliśmy różnice w działaniu narzędzia Trace w Apigee X i hybrydowej usłudze Apigee oraz w Apigee Edge Cloud:

Funkcja Apigee Edge Cloud Apigee X i hybrydowa usługa Apigee
Terminowość Czas rzeczywisty; synchroniczne Niewielkie opóźnienie; asynchroniczne
Nazwa/identyfikator sesji akceptuje nazwę sesji od użytkownika; Nie akceptuje nazwy sesji od użytkownika
Filtry obsługę podstawowych filtrów, takich jak filtrowanie nagłówków i parametrów zapytania; Obsługa złożonej logiki filtrowania, w tym operacji logicznych ORAZ i LUB. Dostęp do dowolnej zmiennej przepływu wymienionej w  informacjach o zmiennych przepływu. Składnia jest taka sama jak w przypadku warunków, co pokazano w dokumentacji warunków.
Limit czasu sesji

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

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

Określa tylko długość sesji debugowania. Punktem wyjścia jest moment, w którym procesor wiadomości otrzymuje żądanie uruchomienia w trybie debugowania.

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

Dane są przechowywane przez 24 godziny, zanim hybryda automatycznie je usunie.

Ważność sesji

Okres ważności żądania utworzenia sesji. Jeśli sesja debugowania nie rozpocznie się w tym czasie, synchronizatory mogą zignorować żądanie utworzenia sesji. Zadbaj o synchronizację zegarów synchronizatorów zgodnie z opisem w sekcji Wymagania wstępne.
Liczba żądań śledzenia Maksymalnie 20 na procesor komunikatów Wartość domyślna to 10 na procesor komunikatów, a maksymalna to 15.
Interfejs API Apigee Edge Cloud Apigee X
Apigee X udostępnia interfejs Debug Session API i interfejs Debug Session Data API, ale nie obsługuje tych funkcji za pomocą interfejsów Apigee X API:
Zatrzymywanie sesji debugowania

Usuwanie konkretnych transakcji

Różnice w zarabianiu

W tabeli poniżej znajdziesz porównanie najważniejszych funkcji monetyzacji w Apigee Edge i monetyzacji w Apigee X.

Monetyzacja Apigee Edge Monetyzacja Apigee X/hybrid
Plany taryfowe są powiązane z pakietami usług API, które można dołączyć do wielu usług API. Plany taryfowe są powiązane z usługami API (relacja jeden do jednego).
Plany taryfowe dla deweloperów aplikacji Deweloperzy aplikacji kupują usługi API
Limitami zarządza się na poziomie proxy interfejsu API Limitami zarządza się na poziomie produktu interfejsu API (na poziomie firmy).
Opublikowane plany cenowe mogą tylko wygasnąć. Nie można ich edytować ani usuwać. Opublikowane plany taryfowe mogą wygasnąć, zostać edytowane, przeniesione do wersji roboczej lub usunięte.
Złożona konfiguracja (bez kreatora ani narzędzia podglądu) Uproszczona konfiguracja planów taryfowych za pomocą kreatora i narzędzia podglądu
MonetizationLimitsCheck zasady blokują dostęp po przetworzeniu pierwszego wywołania interfejsu API, jeśli deweloper aplikacji nie kupił subskrypcji. MonetizationLimitsCheck zasady natychmiast blokują dostęp, jeśli deweloper aplikacji nie kupił subskrypcji lub przekroczył limit;
Dane o zarabianiu na transakcjach można rejestrować za pomocą zmiennych niestandardowych w zasadach dotyczących rejestrowania transakcji. Apigee automatycznie rejestruje dane dotyczące zarabiania, a dane dotyczące zarabiania w przypadku transakcji można zastąpić za pomocą zasady DataCapture. Więcej informacji znajdziesz w artykule Przechwytywanie danych o generowaniu przychodów.
Konta przedpłacone i płatności po wykonaniu usługi można skonfigurować zarówno dla deweloperów, jak i dla planów taryfowych. Konta przedpłacone i abonamentowe mogą być konfigurowane tylko dla deweloperów.

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

Google nie planuje obsługiwać tych funkcji:

  • Rozszerzenia Apigee Edge
  • Sklep ze specyfikacjami OpenAPI
  • interfejsy API do wyszukiwania lub unieważniania tokenów dostępu OAuth (ponieważ tokeny są haszowane);
  • zasada OAuth w wersji 1 lub OAuthv1.0a,
  • Trireme (wycofany 10.10.2019)
  • Nagłówki z prefiksem „X-Apigee-” nie są obsługiwane w Apigee X i są usuwane z żądań i odpowiedzi przed wysłaniem do miejsc docelowych i klientów.
  • Usługa Apigee Edge proxy_read_timeout nie jest obsługiwana w Apigee X. Więcej informacji o ustawieniach limitu czasu Apigee X znajdziesz w sekcji Ustawianie io.timeout.millis i api.timeout.

Porównanie interfejsów API

Większość interfejsów API Apigee Edge ma swoje odpowiedniki w interfejsach API Apigee. W tej sekcji znajdziesz:

Podsumowanie zmian za pomocą interfejsu API

Poniżej znajdziesz listę zmian w zachowaniu wszystkich interfejsów Apigee X API w porównaniu z interfejsami Apigee Edge API.

Zachowanie Interfejsy Apigee Edge API Interfejsy API Apigee X
Domena bazowa 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 z prefiksem w postaci podkreślenia Obsługiwane (_optimal=true) Nieobsługiwane (optimal=true)
Właściwości w ładunkach:
  • created_by
  • modified_by
  • self
Obsługiwane 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ź na prośbę o usunięcie z pamięci podręcznej Zwroty: 200 OK i szczegóły pamięci podręcznej Zwroty: 204 No Content
Operacje interfejsu Cache API List, create, get, update, delete, clear all, i  clear. Lista i usuwanie. Krótkotrwałe pamięci podręczne L1 są tworzone automatycznie podczas wdrażania serwera proxy interfejsu API. Więcej informacji znajdziesz w sekcji Wewnętrzne działanie pamięci podręcznej.

Różnice między interfejsami API do obsługi danych Apigee Edge i Apigee X

Podsumowanie zmian w interfejsie API zawiera ogólne różnice między interfejsem Apigee Edge API a interfejsem Apigee X API. W tabeli poniżej znajdziesz konkretne różnice w przypadku interfejsów API danych:

Funkcja Interfejsy API Apigee Edge Interfejsy API Apigee X
punkt końcowy API api.enterprise.apigee.com apigee.googleapis.com
Codzienne e-maile z informacjami analitycznymi Brak obsługiwanych interfejsów API
Async Query List API Pobieranie listy zapytań analitycznych wykonywanych asynchronicznie Właściwość userId jest pomijana w odpowiedzi. Patrz Metoda: organizations.environments.queries.list.
Interfejsy API raportów niestandardowych Reports API Z odpowiedzi zostały usunięte właściwości createdBy i lastModifiedBy. Więcej informacji znajdziesz w sekcji 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ą odpowiedników w interfejsie API Apigee X).

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 proxy interfejsu API
  • Pobieranie zależności npm
  • Zarządzanie modułami npm
Audyty Korzystanie z Stackdriver Logging API
Logi w pamięci podręcznej Brak obsługiwanych interfejsów API
Firmy Brak obsługiwanych interfejsów API
Aplikacje związane z firmą Brak obsługiwanych interfejsów API
Rodzina aplikacji firmowych Brak obsługiwanych interfejsów API
Klucze aplikacji firmowych Brak obsługiwanych interfejsów API
Sesje debugowania
  • Nie można zatrzymać sesji śledzenia
  • Nie można usuwać poszczególnych transakcji

Więcej informacji znajdziesz w artykule Różnice w stosunku do funkcji Śledzenie.

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: magazyn zaufanych certyfikatów 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 proxy interfejsu API
  • Zakres organizacji
Sense Brak obsługiwanych interfejsów API
Użytkownicy i role użytkowników Korzystaj z interfejsów API związanych z Google Identity and Access Management (IAM) zgodnie z opisem w artykule Zarządzanie użytkownikami, rolami i uprawnieniami za pomocą interfejsów API.
Wirtualni hostowie Brak obsługiwanych interfejsów API

Apigee Edge for Private Cloud a Apigee hybrid

W tabeli poniżej porównano Apigee Edge Private Cloud i Apigee Hybrid:

Usługa Usługa lub funkcja Apigee
Apigee Edge Private Cloud Apigee hybrid
Analytics Serwery Qpid i Postgres Pod zbierania danych w płaszczyźnie środowiska wykonawczego używa fluentd i UDCA (Universal Data Collection Agent) do zbierania danych analitycznych i przesyłania ich do UAP (Unified Analytics Platform) w płaszczyźnie zarządzania.
Brama proxy interfejsu API procesor komunikatów Procesor komunikatów (MP) przetwarza przychodzące żądania. MP są wdrażane jako co najmniej 1 aplikacja w kontenerze w płaszczyźnie środowiska wykonawczego.
Trwałość Węzeł lub pierścień Cassandra Cassandra zapewnia trwałość funkcji KMS, KVM, limitów i pamięci podręcznej.
Wdrożenie ZooKeeper Synchronizator zapewnia aktualność konfiguracji serwera proxy interfejsu API, informacji o środowisku i innych danych między płaszczyzną zarządzania a płaszczyzną środowiska wykonawczego.
Administracyjny interfejs użytkownika Interfejs Apigee Edge jest hostowany na serwerze zarządzającym. Interfejs Apigee jest hostowany na platformie zarządzania.
Równoważenie obciążenia Router Kontroler Istio Ingress przekazuje żądania do skonteneryzowanej aplikacji procesora komunikatów (MP) w płaszczyźnie środowiska wykonawczego.
Interfejsy API Serwer zarządzania Dostęp do interfejsów API Apigee X odbywa się za pomocą serwera zarządzającego i MART. MART wchodzi w interakcje z lokalnym magazynem danych Cassandra i pełni rolę dostawcy interfejsów API dla interfejsów API Apigee X, które umożliwiają dostęp do encji danych środowiska wykonawczego i zarządzanie nimi.
Dane Każdy komponent skonfigurowany za pomocą JMX Zarządzany przez jeden serwer Prometheus na klaster dla wszystkich usług.