Я должен взаимодействовать с унаследованной системой, которая принимает связь с сокетом и сообщения. Моя цель состоит в том, чтобы подать межплатформенную заявку, но мне нужна способность продвинуть сообщения клиенту (т.е. - WCF.NET, Комета Java) и обнаружить, когда пользователь закрывается из их браузера для уничтожения сокета. Я создал прототип обертки.NET + WCF + Silverlight, но это так разъединяется, это трудно управлять состоянием пользователя и, кажется, кошмар для поддержки. Все это рассмотрело, каков был бы мой наилучший вариант?
HTTP не имеет состояния. Вам необходимо поддерживать сеанс для каждого пользователя (что обычно выполняется с помощью файлов cookie HTTP ). Затем, в зависимости от гибкости устаревшей системы, вы можете поддерживать пул подключений к нему, отображение подключения к сеансу по запросу, чтобы сбалансировать нагрузку на эту устаревшую систему.
Если вам нужно передать информацию клиенту, я бы посоветовал вам использовать Silverlight или Java-апплет и установить соединение через сокет. Комета или длинный опрос iframe - это хаки. Они ненадежны. Или, если вы можете подождать, используйте WebSocket, который теперь не зависит от HTML5 и, боги знают, когда он станет стандартом.