Антипаттерн: не удаляйте развернутые прокси API NodeJS, которые не используются

Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X.
Информация

Одна из уникальных и полезных функций Apigee Edge – возможность обернуть приложение NodeJS в прокси API. Это позволяет разработчикам создавать управляемые событиями серверные приложения с помощью Edge.

Антипаттерн

Развертывание прокси API – это процесс, в результате которого они становятся доступны для обработки запросов к API. Каждый из развернутых прокси API загружается в оперативную память процессора сообщений, чтобы обрабатывать запросы API для определенного прокси API. Поэтому использование памяти во время выполнения увеличивается с ростом числа развернутых прокси API. Если оставить развернутыми неиспользуемые прокси API, это может привести к ненужному использованию памяти во время выполнения.

В случае с прокси API NodeJS есть ещё одно важное обстоятельство.

Платформа запускает приложение Node для каждого развернутого прокси API NodeJS. Приложение Node аналогично отдельному экземпляру сервера Node в процессе Message Processor JVM.

Фактически для каждого развернутого прокси-сервера API NodeJS Edge запускает отдельный сервер узла для обработки запросов к соответствующим прокси. Если один и тот же прокси API NodeJS развернут в нескольких средах, для каждой из них запускается соответствующее приложение Node. Если развернуто много неиспользуемых прокси API NodeJS, запускается несколько приложений Node. Неиспользуемые прокси-серверы NodeJS приводят к тому, что неактивные приложения Node потребляют память и влияют на время запуска процесса приложения.

Использованные прокси Неиспользуемые прокси-серверы
# Прокси # Развернутые среды Запущено # приложений Node.js # Прокси # Развернутые среды # приложений Node запущено
10 dev, test, prod (3) 10x3=30 12 dev, test, prod (3) 12x3=36

На иллюстрации выше запущено 36 неиспользуемых приложений Node. Это приводит к расходу системной памяти и негативно влияет на время запуска процесса.

Результат

  • Высокое использование памяти и каскадное влияние на способность приложения обрабатывать дальнейшие запросы
  • Вероятное влияние на производительность прокси API, которые фактически обслуживают трафик.

Совет

  • Отмените развертывание неиспользуемых прокси API
  • Используйте панель "Производительность прокси-сервера Аналитики", чтобы определить, какие прокси-серверы не обслуживают трафик, и отменить развертывание ненужных.

Дополнительные материалы