2015-10-21 2 views
2

Я некоторое время тестировал менеджера api, и в настоящее время я выполняю некоторые тесты производительности на некоторых машинах, но заметил низкую производительность (например, 20 req/s). После некоторых проверок (машины не достигли пределов cpu/mem) я заметил большое количество открытых соединений из Gateway API в Key Manager, даже если я делаю один и тот же запрос с тем же токеном снова и снова.woke2 api gateway token кеширование

Документы относятся к кэшу маркера шлюза в файле api-manager.xml и <EnableGatewayKeyCache>true</EnableGatewayKeyCache>, но по умолчанию он включен, и я использую значения по умолчанию почти во всем остальном.

Почему так много связей с менеджером ключей и как я могу улучшить производительность?

+2

20 REQ/с гораздо более за по сравнению с производительностью по API Manager. Должна быть проблема с вашей настройкой. Что такое бэкэнд, который вы использовали для тестирования? Если бэкэнд не сможет обработать трафик, это будет узким местом. – harsha89

ответ

2

Для успешного выполнения кэширования маркеров требуется кэширование на уровне шлюза и ресурсов. Если один из них отключен, для вызова API можно нажать «Менеджер ключей». По умолчанию кэширование шлюза и кэширование ресурсов устанавливаются как активированные в пакете APIM.

Не могли бы вы проверить, не отключено ли кэширование ресурсов? Если это так, убедитесь, что включено кэширование ресурсов и повторите попытку. Вы можете включить кеширование ресурсов, установив значение «EnableGatewayResourceCache» как «true» в файле api-manager.xml. Более подробную информацию об кэшировании API-менеджера вы можете найти в этих документах [1] [2].

[1] https://docs.wso2.com/display/AM1100/Configuring+Caching

[2] http://sanjeewamalalgoda.blogspot.com/2012/10/wso2-api-manager-advanced-validation.html