2009-11-14 14 views
6

Chciałbym wiedzieć, czy istnieje sposób na napisanie serwera komety w języku C#. Mam kod C#, który generuje dane okresowo, i chcę przenieść te dane do aplikacji java. Chciałbym przekonwertować mój kod C# na serwer kometowy. Chciałbyś również wiedzieć, czy istnieje jakikolwiek serwer kometowy, który umożliwia nam połączenie aplikacji C# i aplikacji java, aby aplikacja C# mogła przekazywać informacje do aplikacji java za pośrednictwem serwera komety. Częstotliwość przesyłania danych byłaby wysoka, ale rozmiar pojedynczej wiadomości jest bardzo mały: wartość ciągu.Implementacja serwera Comet w języku C#

+0

jest to praca indywidualna, więc nie stać jej na żadne komercyjne produkty. Produkt komercyjny "stream hub" ma dobrą implementację serwera komet, ale funkcje, których wymagam, nie są dostępne w ich bezpłatnej wersji. – sura

Odpowiedz

5

Zróbmy to prosto.

Jestem zakładając, że jest to nawiązanie do tego pytania: communication between Java and C#

Jest to aplikacja do komunikacji z aplikacjami na tym samym komputerze z tylko ciągi jako ładunek, prawda?

Dlaczego COMET? Dlaczego nie wysyłać łańcuchów zakończonych znakiem NUL bezpośrednio przez połączenie z gniazdem? Wdrożenie serwera Comet jest daleka od trywialności i jest używane tylko w sytuacjach, w których bardziej bezpośrednia komunikacja jest zabroniona (tj. Od serwera do przeglądarki). Kometa do komunikacji aplikacji z aplikacją na tej samej maszynie byłaby bardzo skomplikowana dla rozwiązania, które można łatwo rozwiązać za pomocą gniazd.

3

Z pewnością można to zrobić, ale napisanie serwera komety w języku C# jest dość skomplikowanym zadaniem. Zbudowaliśmy jeden (WebSync) i wymagało to sporo wysiłku. Jeśli właśnie robisz projekt badawczy, możesz użyć wersji OnDemand, która jest hostowana i ma 10 darmowych użytkowników. Teraz wersja Serwera nie jest darmowa, ale jest całkiem tania ...

Za to, co warto, jeśli zdecydujesz się rzucić własną, będziesz patrzył na IHttpAsyncHandler, a ty " Będę musiał wykonać pewne zarządzanie wątkami, aby poradzić sobie z domyślnymi limitami wątków w IIS.

+1

Jeśli ktoś to przeczyta, jest to bardzo przyjemny produkt. Spójrz na to. Nie pożałujesz tego. – Dested

+0

Czy można użyć pakietu SDK On-Demand WebSync do pobrania serwera Comet, takiego jak superfeeder? http://blog.superfeedr.com/websockets-and-comet/ – superlogical

+0

Wygląda na to, że mają własną implementację pod maską, więc nie będziesz potrzebował jej do jej użycia. WSOD może być z pewnością używany w połączeniu z nim, ale buduje własną implementację, używając własnego protokołu; zauważ, że wspominają, że nie ma zdefiniowanego protokołu ... to nie do końca prawda, ponieważ specyfikacja Bayeux jest z pewnością dostępna. (http://svn.cometd.com/trunk/bayeux/bayeux.html). W związku z tym będą musieli mieć własny pakiet SDK. – jvenema

2

Być może potrzebujesz przykładowego kodu źródłowego do swojej implementacji? PokeIn Odwrotna biblioteka ajaxów była projektem open source, a kody źródłowe wcześniejszych wersji nadal można pobrać na stronie codeplex.

Oczywiście, najnowsza wersja biblioteki PokeIn jest jedną z najwspanialszych bibliotek dla platformy .Net i możesz użyć ich darmowej edycji społeczności.