Ich entwickle eine Anwendung, in der verteilte Komponenten über ein Netzwerk in einer asynchronen, Pub/Sub Art miteinander kommunizieren.Was ist der beste Weg für verteilte Prozesse, asynchron zu kommunizieren?
Dafür mag ich die Idee, XML über Sockets zu senden - es ist asynchron, ich brauche keinen Server irgendeiner Art, und es kann lokal oder über ein Netzwerk arbeiten. Ich würde meinen eigenen Pub/Sub-Mechanismus rollen müssen, der wahrscheinlich nicht zu beschwerlich sein wird - ich könnte die IP-Adresse als ID des Abonnenten verwenden. Die Implementierungssprache ist C++. Ich habe diese Methode zuvor mit guten Ergebnissen verwendet. Aber ich frage mich, ob es einen besseren Weg gibt? Jeder Rat willkommen.
Edit: Ich habe noch keine Entscheidung gemacht, aber ich bin in cparcode Kommentar auf protobuf interessiert.
„Ich habe nie verstanden, die Popularität von XML für Netzwerk Comms mit irgendeiner Weise stelle ich fest, dass die Protokoll ist nur ein Teil Ihres Problems, aber zu diesem Thema gibt es Googles Protobuf auch: http://code.google.com/p/protobuf/ - caparcode (Mar 11 at 1:01)
Ummm ... Buchsen nativ asynch? vielleicht in einem Paralleluniversum? – dkretz
alle modernen Socket-Bibliotheken haben asynch APIs – Javier
Dinge zu beachten: XML-Parsing-Leistung, dauerhafte Socket-Speicher-Overhead, usw. Aber wie andere gesagt haben, wenn Sie es in der Vergangenheit getan haben, dann können Sie es erneut tun. Es wäre schön, Ihre anderen Anforderungen zu beschreiben: Wie viele Maschinen im Netzwerk? Gibt es Perf-Anforderungen? – slacy