3

Немного предыстории по сценарию.
У меня есть распределенное приложение, работающее на RH6.5, которое использует JMS (OpenMQ 4.5.2) для отправки сообщений между хостами.
Один хост (хост A) получает информацию от сетевых элементов, таких как маршрутизаторы и коммутаторы, и передает эту информацию другому хосту (хост B) для обработки. JMS работает на хосте B.
Эти сообщения, проходящие через JMS, в среднем составляют около 100 сообщений в секунду и могут иметь пики в несколько сотен сообщений без каких-либо проблем.

Иногда я наблюдаю, что поток сообщений останавливается, ничто не достигает Узла B, несмотря на то, что Узел A все еще получает данные из сети с подобными скоростями. Когда это происходит, процесс JMS на хосте B занимает весь процессор.

Используя netstat -o, я также заметил, что Recv-Q сокета JMS на стороне хоста B очень высок:

Proto   Recv-Q  Send-Q  Local Address   Foreign Address State       Timer
tcp     268439  0       HostB:9030      HostA:53712     ESTABLISHED off (0.00/0/0)

На стороне узла A уровень Send-Q также высок:

Proto   Recv-Q  Send-Q  Local Address   Foreign Address State       Timer  
tcp     0       68736   HostA:53712     HostB:9030      ESTABLISHED probe (17.25/0/0)

Я также заметил значение "зонд" в таймере. При поиске в Интернете я обнаружил мало информации о значении этого значения.

Итак, вопрос в том,
Что означает значение таймера "probe" и может ли это отражать некоторые проблемы чтения или записи в сокет?

0