Тайм-аут гибкой потоковой передачи - PullRequest
3 голосов
/ 28 октября 2009

У меня есть Flex GUI, использующий потоковую передачу AMF в BlazeDS в WebLogic 9.2. Поскольку потоковая передача AMF использует длительный опрос, она сохраняет соединение открытым в течение продолжительных периодов времени.

Максимальное время ожидания потока в WebLogic составляет 600 секунд. WebLogic выдает ошибку и тайм-аут потока, если он был жив дольше, чем время ожидания. Это приводит к тому, что мой графический интерфейс теряет соединение и зависает.

Я мог бы изменить настройки по умолчанию в WebLogic (StruckThreadMaxTime), но это, очевидно, отрицательно сказалось бы на законно застрявших потоках.

Кто-нибудь может подсказать, какие еще варианты есть у меня для решения этой проблемы?

Ответы [ 2 ]

2 голосов
/ 28 октября 2009

Возможно, вы можете использовать событие Consumer.channelDisconnect , а затем повторно подключиться?

0 голосов
/ 28 октября 2009

В AIR2.0 был добавлен новый API для тайм-аута простоя, помогающий справиться с длительным опросом. Вы можете попытаться выяснить, как это работает, и заново внедрить или настроить таймеры самостоятельно, и попытаться прервать соединение с гибкого конца до истечения времени ожидания (а затем немедленно переустановить)

...