Omówienie środowiska Node.js na platformie Apigee Edge

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

Interfejsy API Node.js możesz hostować w usłudze Apigee Edge, gdzie będą mogły być wywoływane przez serwery proxy interfejsów API jako usługi docelowe.

Obsługa Node.js w Apigee Edge umożliwia tworzenie niestandardowych usług zaplecza dla Twoich serwerów proxy w Node.js. Zasadniczo Apigee Edge hostuje kod Node.js w środowisku wykonawczym ograniczonym do organizacji i środowiska Apigee. Serwery proxy interfejsu API wdrożone w tej samej organizacji i tym samym środowisku mogą wywoływać interfejsy API oparte na protokole HTTP udostępniane przez aplikację Node.js.

Opcje wdrażania Node.js

Apigee oferuje 2 opcje hostingu kodu Node.js: docelowe hostowane i tradycyjne środowisko wdrożeniowe Node.js Edge.

Wdrażanie w celach hostowanych

Docelowe środowiska hostowane umożliwiają uruchamianie aplikacji Node.js w natywnym środowisku, które nie zależy od żadnej technologii czasu wykonywania specyficznej dla Apigee. Udostępnia on środowisko uruchomieniowe natywnego węzła, dzięki czemu możesz korzystać z ulubionych pakietów węzła.

Przed wdrożeniem aplikacji możesz ją debugować i testować lokalnie, mając pewność, że wdrożona wersja będzie działać dokładnie tak samo jak lokalna. W momencie wdrożenia możesz wybrać dowolną wersję środowiska uruchomieniowego aplikacji do jej uruchamiania w usługach Hosted Targets. Możesz na przykład zdecydować się na uruchomienie aplikacji Node.js w środowisku v8.10.0 lub innej wersji.

Rysunek poniżej przedstawia podstawową architekturę:

Środowisko docelowe hostowanych celów jest ograniczone do organizacji i środowiska Apigee i może służyć jako miejsce docelowe dla wszystkich serwerów proxy interfejsu API, które są wdrażane w tej samej organizacji i środowisku.

Wdrażanie do tradycyjnego osadzonego środowiska Node.js

Tradycyjne podejście do wdrażania Node.js w Edge opiera się wewnętrznie na aplikacji przekształcającej oprogramowanie oparte na kodzie źródłowym (Trireme) oraz na interpreterze JavaScript (Rhino). Te komponenty umożliwiają uruchamianie kodu Node.js bezpośrednio w środowisku wykonawczym Java w Edge.

Tradycyjne, osadzone środowisko wykonawcze Node.js jest ograniczone do organizacji i środowiska Apigee i może służyć jako miejsce docelowe dla dowolnych serwerów proxy interfejsu API, które są wdrażane w tej samej organizacji i środowisku.

W ramach tego podejścia możesz używać modułu pomocniczego apigee-access, który umożliwia dostęp do zmiennych przepływu proxy API, pamięci podręcznej, map klucz-wartość oraz limitów w kodzie aplikacji Node.js.

Wybór podejścia do Node.js

Apigee zaleca rozważenie użycia hostowanych celów. Aplikacje Node.js wdrożone do hostowanych celów nie są zależne od żadnej technologii Node.js w czasie wykonywania, która jest specyficzna dla Apigee. Aplikacja Node.js będzie działać w hostowanych celach dokładnie tak samo jak w Twoim lokalnym środowisku programistycznym.

Co więcej, obsługa tradycyjnego wdrożenia Node.js Edge przez Apigee ma pewne ograniczenia:

  • Obsługiwana jest tylko starsza wersja Node.js (0.10.32).
  • Istnieje kilka drobnych różnic między standardowym środowiskiem Node.js a środowiskiem Trireme/Rhino.
  • Debugowanie aplikacji Node.js po wdrożeniu ich w Edge jest trudne.

Obecnie cele hostowane nie obsługują używania parametru apigee-access do uzyskiwania dostępu do zasobów w kontekście przepływu za pomocą serwera proxy, np. zmiennych przepływu.

Więcej informacji o tradycyjnym wdrożeniu Node.js Edge znajdziesz w artykule Tradycyjne wdrażanie Node.js na Edge.

Przypadki użycia

Oto typowe zastosowania Node.js w Edge:

  • tworzenie wysoce dostosowanych samodzielnych interfejsów API i usług backendowych opartych na protokole HTTP;

  • Rozwiązywanie złożonych problemów związanych z optymalizacją pod kątem urządzeń mobilnych z korzyścią z możliwości tworzenia skryptów w docelowym punkcie końcowym.

  • tworzenie usług złożonych i mashupów.

  • Szybkie tworzenie prototypów nowych interfejsów API za pomocą takich frameworków jak Express.

Następny krok

Aby zdecydować, które podejście do wdrażania Node.js jest dla Ciebie najlepsze, zapoznaj się z tymi ogólnymi informacjami: