2016-09-12 2 views
0

Я создал API в WSO2 ESB 4.9.0, скажем, API1 и API2. API2 называется асинхронно из API1. Эти два API hanlde 1,2 миллиона запросов каждый день, и каждый запрос содержит xml-файл размером от 100 КБ до 500 КБ. Мы вынуждены перезапускать frequnt-сервер из-за высокой загрузки процессора. Потребление памяти в норме. Одна из причин, по которой я подозреваю, что поток Async не способен очистить большой XML от contenxt, и они сложены в течение нескольких часов, а загрузка процессора растет ... Возможно, я не смотрю в нужное место, чтобы решить проблема, но я хочу удалить все эти проблемы ... Быстрая помощь приветствуется здесьКак отменить ответ вызовов API Async в WSO2 ESB 4.9.0

+0

Пытались ли вы с капли медиатора? –

+0

Я еще не пробовал с помощью медиатора. Drop выкинет сообщение, но все же он попытался отправить ответ обратно клиенту. – storia321

+0

Не уверен, что я понял, что вы на самом деле. Может быть, посредник ответа помогает. https://docs.wso2.com/display/ESB480/Respond+Mediator –

ответ

0

Я не уверен, что точное требование, в какой точной точке вы хотите отказаться от ответа. Однако я думаю, что вы можете проанализировать дамп потока и определить потоки, что вызывает необычное использование процессора. Для этого вы можете выполнить top -H и получить список потоков и получить дамп потока и проанализировать трассировку стека нитей.

ps -ef | Grep wso2esb - Это будет получить PID

jstack $ PID> thread_dump.txt

Смежные вопросы