В письме от Mon, 17 Oct 2011 17:13:05 +0400, Alexey Popov
<a...@novgorod.net> сообщал:
Если это накапливающаяся проблема.
Если же это происходит случайно, то не поможет.
1) даже в этом случае, чем дальше, тем больше вероятность, что уже
случилось
2) запусти, действительно, регулярно повторяющийся ивент. При каком-то
постоянно происходящем запросе, чтобы раз в несколько минут посылался.
Перестал посылаться - значит пора переподключаться.
а вообще часто этот ивент отправляется ?
не может там соединение просто иногда от бездействия отваливаться ?
запусть какой-нибудь дампер и посмотреть
1) какие есть соедuнения между службой и сервером
2) что по ним проходит, насколько помню для событий зaводили отдельное
TCP-соединение, не связанноe с данными
По крайней мере увидишь, это сервер не отправляет сообщение, или служба
не принимает.
Конкретно сервер врядли виноват - проблема слишком заметна и появляется
регулярно. Но как диагносцировать детальнее - х.з.
Ну под виндой я бы посмотрел в сторону SysInternals
Там были программы типа TDI Monitor и TCP Lister
Сначала на работающей программе, сразу после запуска
1) какие вообще есть соединения между службой и сервером, сколько их,
порты на обоих концах и т.д.
2) по возможности - в каких случая по каким соединениям ходят данные. Я,
возможно неправильно, помню что будет одно соединение для ивентов, и ещё
для данных одно или два - смотря как программа написана.
3) если удастся выделить ивенты - записать содержимое пакетов "в норме" в
обе стороны - тут щас девелоперы заржут, они эти структуры и так знают, и
наверное их не так трудно найти в исходниках... но на пальцах можно просто
HEX'ы записать
3.1) если не удастся поймать отдельное соединение только для ивентов - вот
тогда плохо. Едва ли парсер внутренних протоколов FB есть дял каких-нибудь
FireShark. Хотя Jaybird вроде по внутренним протоволам работает, на его
основе можно наверное бы было перехватчик+парсер делать, но никому скоре
всего не нужно
Потом для интереса проверил бы то же самое на работающей конфигурации
сутки спустя. Просто посмотреть те же соединения, или переоткрывались.
И наконец после отвала ивентов ещё раз сделал бы то же самое.
И сравнил.
--
Написано в почтовом клиенте браузера Opera: http://www.opera.com/mail/