2010-08-27 16 views
7

Ho un dubbio riguardante la .net messaggistica & la sua compatibilità con altri protocolli aperti là fuori. Mi piacerebbe sapere se l'API di messaggistica .NET è in grado di funzionare con il protocollo STOMP? Come faccio a utilizzare questo protocollo? c'è qualche biblioteca specifica là fuori che devo usare?.Net Messaging & STOMP Protocol

grazie per aver condiviso la tua esperienza e le tue idee.

risposta

2

Alla radice di esso, STOMP sembra essere la messaggistica basata su TCP con il suo insieme di comandi e caratteri di controllo.

Non c'è niente in .NET che dovrebbe darti dei dubbi sul fatto di non essere in grado di creare un'applicazione o una libreria utilizzando questo protocollo. Se stavi creando una libreria STOMP .NET da zero, dovresti sfruttare System.Net.Sockets. Ecco alcuni esempi di codice C#.

Byte[] bytesSent = Encoding.ASCII.GetBytes(someStringMessage); 

// Create a socket connection with the specified server and port. 
Socket s = ConnectSocket("192.168.0.101", somePort); 

// If the socket could not get a connection, then return false. 
if (s == null) 
    return false; 

// Send message to the destination. 
s.Send(bytesSent, bytesSent.Length, 0); 

// Receive the response back 
int bytes = 0; 
s.ReceiveTimeout = 3000; 
bytes = s.Receive(bytesReceived, bytesReceived.Length, 0); 
string page = Encoding.ASCII.GetString(bytesReceived, 0, bytes); 
s.Close(); 

Quali dubbi hai? Forse modifica la tua domanda con qualche dubbio?

+1

grazie per le informazioni! quindi, intendi dire che .net MQ lo supporta e possiamo farne uso. Sei a conoscenza di qualsiasi libreria esistente? La ricerca di Google sembra essere piena di risultati MQ basati su Java. –

+0

@ Abdel: Credo che quello che sto dicendo è che puoi sicuramente scrivere il tuo, se non trovi una libreria. Ho capito dalla tua domanda che avevi dei dubbi sul fatto che un linguaggio .NET potesse supportare il protocollo. –

5

Se l'obiettivo è inviare messaggi da un linguaggio .NET, prendere in considerazione l'utilizzo dello Apache ActiveMQ NMS library for .NET. Sostengono di utilizzare un'unica API per connettersi a più provider diversi.

Attualmente, i seguenti fornitori sono disponibili:

  • ActiveMQ che collega utilizzando OpenWire a un ActiveMQ Message Broker.
  • STOMP che si collega a qualsiasi broker STOMP.

Il sito collegato sopra ha i download e i collegamenti agli articoli su come iniziare negli scenari di messaggistica più comuni.

+0

grazie! questo è molto utile! –

+0

@Abdel: ecco un upvote per la tua domanda! –