Próbuję ponownie napisać jeden z naszych starych serwerów przy użyciu ZeroMQ, bo teraz mam następującą konfigurację serwera, (który działa dla żądań Zmq):Czy ZeroMQ może być używany do akceptowania tradycyjnych żądań gniazd?
using (var context = ZmqContext.Create())
using (var server = context.CreateSocket(SocketType.REP)) {
server.Bind("tcp://x.x.x.x:5705");
while (true) { ... }
Taka konfiguracja działa w porządku, gdybym korzystania z biblioteki klienta Zmq połączyć context.CreateSocket(SocketType.REQ)
Ale niestety mamy wiele starszych kod, który musi połączyć się z tym serwerem i gniazda są tworzone przy użyciu gniazda bibliotekami .NET:
Socket = new Socket(ipAddress.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
Socket.Connect(ipAddress, port);
tam jest sposób na pisanie serwer ZeroMQ, aby zaakceptować te tradycyjne połączenia gniazd .net?
Hej, @Raffian, dziękuję, ale nie wiem, jak to zaimplementować. Nie ma typu SocketType RAW, czy masz przykład, który możesz podać? –
Tak, oto jeden napisany przez Pietera, http://hintjens.com/blog:42, to w zasadzie serwer HTTP używający zmq surowych gniazd, jest w C, ale powinieneś być w stanie przenieść go do .net, o ile. net obsługuje gniazdo 'RAW', wiem, że czysta biblioteka Java zmq (jeromq) nie ... mam nadzieję, że to pomoże. – raffian
Dziękuję @ Raffian, nie mogę połączyć bezpośrednio z biblioteką ZMQ, używam clrzmq, implementacji .Net, więc to może nie być możliwe –