Włącz wdrożenie HTTP

Domyślnie Edge do wdrażania serwerów proxy API używa protokołu RPC. Tryb ten sprawdza się bardzo dobrze w większości instalacji, jednak w przypadku większych topologii z wieloma komponentami MP mogą występować przekroczenie limitu czasu, gdy wiele równoczesnych wywołań jest wykonywanych przez RPC. Apigee planuje w przyszłości wycofać tę implementację.

Dlatego Apigee zaleca, aby w przypadku większych wdrożeń używać protokołu HTTP zamiast RPC.

Oprócz zapewnienia większej niezawodności wdrożenie HTTP poprawia również treść i format wyjątków, które mogą wystąpić podczas procesu wdrażania.

Z tej sekcji dowiesz się, jak włączyć HTTP do wdrożenia.

Aktualizowanie organizacji

Aby włączyć wdrażanie HTTP, wyślij żądanie PUT do interfejsu Update Organization Property API. W treści żądania ustaw te właściwości:

Właściwość Opis
allow.deployment.over.http Określa, czy przeglądarka Edge może wdrażać serwery proxy interfejsu API za pomocą protokołu HTTP (oprócz RPC). Ustaw na true, aby zezwolić na wdrożenie HTTP, w przeciwnym razie ustaw na false. Wartość domyślna to false.

Aby włączyć wdrożenia HTTP, musisz ustawić tę właściwość na true.

use.http.for.configuration

Określa metodę używaną do zdarzeń konfiguracji. Możliwe wartości to:

  • never: wszystkie zdarzenia konfiguracji korzystają z RPC. Jest to ustawienie domyślne.
  • retry: wszystkie zdarzenia konfiguracji najpierw używają wywołania procedury zdalnej; jeśli zdarzenie nie powiedzie się za pomocą wywołania procedury zdalnej, Edge spróbuje użyć HTTP. Może to powodować opóźnienia, jeśli powinieneś używać protokołu HTTP.
  • always: wszystkie zdarzenia konfiguracji używają HTTP.

Aby umożliwić wdrożenia HTTP, Apigee zaleca ustawienie tej właściwości na always.

Oprócz skonfigurowania tych właściwości w treści wiadomości musisz ustawić nagłówek Content-Type na application/json lub application/xml.

W przykładzie poniżej wywołujemy interfejs API aktualizacji właściwości organizacji z treścią wiadomości w formacie JSON.

curl -u admin_email:admin_password
  "http://management_server_IP:8080/v1/organizations/org_name"
  -X POST -H "Content-Type: application/json" -d
  '{
    "properties" : {
      "property" : [
      {
        "name" : "allow.deployment.over.http",
        "value" : "true"
      },
      {
        "name" : "use.http.for.configuration",
        "value" : "always"
      } ]
    }
  }'

Aby umożliwić wdrażanie HTTP na wszystkich serwerach proxy interfejsów API we wszystkich organizacjach, musisz zaktualizować każdą organizację w sposób opisany powyżej.

Testowanie aktualizacji

Aby sprawdzić, czy aktualizacja się udała, wywołaj zdarzenie wdrożenia na serwerze proxy interfejsu API w zaktualizowanej organizacji, a potem przejrzyj pliki dziennika usługi Message Processor. Wpis logu dotyczący zdarzeń wdrożenia powinien zawierać ciąg mode:API.

Więcej informacji znajdziesz w artykule Pliki logowania.