Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Двунапрвленный сокет
Уважаемые господа, скажите пожалста, можно ли как либо организовать
обмен клиента и сервера в обе стороны по одному и тому же сокету?
Например, что то типа post или put, куда клиент отправляет переодически
команды и
сообщения о том что он до сих пор жив, а обратно получает данные ДО
окончания
передачи на сервер.
Суть проблемы. Сервлет, который никогда не закроет соединеие и будет
выдавать данные
(в данном случае рыночные котировки) вечно. Но есть проблема некоторые
NAT устройств, когда
внешнее соединение давно разорванно, а внутренее (в локальной сети)
продолжает оставаться соединенным,
ошибку получаеш только когда пытаешся писать в этот сокет, но в случае
GET, как сейчас, я в этот сокет после
передачи запроса писать уже ничего не могу. Сейчас решаю как передача
постоянно с сервера маленьких
"пингов" раз в секунду если небыло ничего другого, т.е. не реже чем раз
в секунду клиент что то но получает,
если не получил в течении 2 секунд, то переоткрывает соединение, но мне
такое решение не очень нравится.
|