java.net.SocketException: сброс соединения - между клиентом и сервером, развернутыми как веб-приложения в tomcat - PullRequest
0 голосов
/ 29 мая 2018

У меня есть приложение Java-шлюза, развернутое как веб-приложение tomcat на сервере 1 и сервере 2, которые являются клиентскими серверами с балансировкой нагрузки.

Это приложение взаимодействует с другим веб-приложением, развернутым на серверах 3 и 4, которые также загружаютсясбалансированный.

В периоды большого объема или при сбое подключения к базовым системам из приложения (серверы 3 и 4) приложение шлюза записывает в журнал «java.net.SocketException: сброс подключения».

Для 10 запросов пара запросов выдает «Сброс соединения» на клиентском сервере. Когда это происходит, в приложении на стороне сервера нет абсолютно никаких проблем. Иногда, когда возникает больше сбоев приложения (Сервер 3 и 4)зависает и должен быть перезапущен.

Любые входные данные будут высоко оценены. Заранее спасибо.

1 Ответ

0 голосов
/ 03 января 2019

После того, как тестирование производительности было выполнено в нашем приложении, результат показал, что после нескольких одновременных запросов приложение останавливалось для создания объектов HttpClient.

В итоге я использовал "ClientConnectionPoolManager". (Поддерживает пул HttpClientConnections иможет обслуживать запросы на подключение из нескольких потоков выполнения. Соединения объединяются для каждого маршрута. Запрос на маршрут, для которого у менеджера уже есть постоянные соединения, доступные в пуле, будет обслуживаться путем аренды соединения из пула, а не созданияновое соединение), и это, кажется, эффективно управляет соединениями.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...