Włącz wdrożenie HTTP

Domyślnie Edge używa RPC do wdrażania serwerów proxy interfejsów API. Ten tryb działa bardzo dobrze w przypadku większości instalacji, jednak w przypadku większych topologii z wieloma MP mogą wystąpić przekroczenia limitu czasu, gdy duża liczba równoczesnych wywołań jest realizowana przez RPC. Apigee planuje w przyszłości wycofać tę implementację.

W związku z tym Apigee zaleca, aby w większych wdrożeniach używać protokołu HTTP, a nie RPC.

Oprócz potencjalnie większej niezawodności włączenie protokołu HTTP poprawia też treść i format wyjątków, które mogą być zgłaszane podczas procesu wdrażania.

W tej sekcji opisaliśmy, jak włączyć HTTP na potrzeby wdrożenia.

Zaktualizuj organizację

Aby włączyć wdrożenie HTTP, wyślij żądanie PUT do interfejsu API aktualizacji właściwości organizacji. Ustaw w treści żądania te właściwości:

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

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

use.http.for.configuration

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

  • never: wszystkie zdarzenia konfiguracji używają RPC. To jest ustawienie domyślne.
  • retry: wszystkie zdarzenia konfiguracji używają najpierw RPC. Jeśli zdarzenie nie powiedzie się przez RPC, Edge spróbuje HTTP. Może to spowodować opóźnienia w przypadku korzystania z protokołu HTTP.
  • always: wszystkie zdarzenia konfiguracji korzystają z protokołu HTTP.

Aby włączyć 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.

Poniżej znajduje się przykład wywołania interfejsu API do 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 włączyć wdrażanie HTTP na wszystkich serwerach proxy API we wszystkich organizacjach, musisz zaktualizować każdą organizację w sposób opisany powyżej.

Testowanie aktualizacji

Aby sprawdzić, czy aktualizacja się powiodła, wywołaj zdarzenie wdrożenia na serwerze proxy interfejsu API w zaktualizowanej organizacji, a następnie przejrzyj pliki dziennika procesora wiadomości. Wpis logu dotyczący zdarzeń wdrożenia powinien zawierać mode:API.

Więcej informacji znajdziesz w artykule Pliki dziennika.