Программирование сокетов для Интернета - PullRequest
1 голос
/ 19 мая 2010

Мне нужно взаимодействовать с устаревшей системой, которая принимает сокетную связь и сообщения. Моя цель - сделать приложение кроссплатформенным, но мне нужна возможность передавать сообщения клиенту (т. Е. WCF .NET, Comet Java) и определять, когда пользователь закрывает свой браузер, чтобы уничтожить сокет. Я создал прототип .NET-оболочки + WCF + Silverlight, но он настолько отключен, что трудно управлять состоянием пользователя и кажется, что его поддержка - кошмар. Учитывая все вышесказанное, какой мой лучший вариант?

Ответы [ 2 ]

2 голосов
/ 19 мая 2010

HTTP не имеет состояния. Вам нужно поддерживать сессию для каждого пользователя (что обычно делается с HTTP cookie .) Затем, в зависимости от того, насколько гибкой является унаследованная система, вы можете поддерживать пул подключений к нему, отображая подключение к сеансу по требованию, чтобы сбалансировать нагрузку на эту унаследованную систему.

0 голосов
/ 19 мая 2010

Если вам нужно передать информацию клиенту, я бы посоветовал вам использовать Silverlight или Java-апплет и установить сокет-соединение. Длинный опрос кометы или фрейма - это хаки. Они не надежны. Или, если вы можете подождать, используйте WebSocket, который теперь не зависит от HTML5, и, боги знают, когда он станет стандартом.

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