Как создать постоянный поток сообщений в WCF - PullRequest
0 голосов
/ 27 августа 2011

Я создаю проект StreamInsight, предназначенный для приема сообщений из другого приложения .NET на удаленной машине.

У меня есть убедительное доказательство концепции завершенного проекта CEP, который использует образец фида Twitter на http://stream.twitter.com/1/statuses/sample.json, хорошо анализирует и просто в целом работает.

Он получает доступ к фиду сообщений, используя такой код

Dim response = request.GetResponse()

Using streamReader = New StreamReader(response.GetResponseStream())

Моя проблема в том, что я не уверен, какие технологии использовать длясоздайте приложение .NET на другом компьютере, который может отправить сообщение через соединение HTTP.Я работал с WCF WebServices раньше, но они всегда возвращают один ответ на один запрос, а не несколько ответов на один запрос.

Может ли кто-нибудь дать мне толчок к технологии MS, которую я могу использовать для генерации этих сообщений

1 Ответ

0 голосов
/ 27 августа 2011

Ответ HTTP-запроса работает по принципу один запрос = один ответ.

Чанкинг - это метод HTTP, который позволяет отправлять HTTP-ответ в виде нескольких чанков, но это все еще один ответ со всеми его ограничениями. Канал чанкинга WCF не является реализацией чанкинга HTTP. Это чанкинг сообщений SOAP, для которого требуется одинаковый чанкинг-канал на обоих концах.

Если вы хотите использовать множественные ответы по HTTP, вы должны предоставить отдельную службу на клиенте, и сервер вызовет эту службу, чтобы предоставить несколько резонансов с некоторым идентификатором корреляции с исходным запросом.

HTTP не является протоколом для непрерывного потока данных. Если вы хотите непрерывный поток данных, используйте сокеты напрямую с TCP.

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