Вы просматриваете документацию по 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
- Используйте панель "Производительность прокси-сервера Аналитики", чтобы определить, какие прокси-серверы не обслуживают трафик, и отменить развертывание ненужных.