2013-11-01 15 views
10

inizierò un nuovo progetto. In questo progetto ho un server e molti client (oltre 100000). I client e il server continueranno a comunicare tra loro. Usano solo messaggi di testo. Penso che sia troppo difficile da gestire con il socket tcp, quindi dovrei scegliere XMPP o SIP. Userò Java in questo progetto. Quale mi suggerisci? e quali sono i loro pro e contro? o conosci una soluzione più efficiente?Confronto XMPP vs SIP

risposta

12

È come paragonare le mele alle arance, perché SIP è stato originariamente progettato per VoIP e XMPP per la messaggistica istantanea.

A mio parere, solo per gli SMS, XMPP è più appropriato.

XMPP è molto più semplice dal punto di vista del firewall: richiede solo una porta TCP 5222 (e la porta 5269 per la comunicazione da server a server). Poiché 5222 è la stessa porta utilizzata da Google Talk, viene raramente filtrata dai firewall aziendali. XMPP supporta anche STARTTLS sulla stessa porta 5222, quindi il traffico può essere facilmente protetto.

SIP, d'altra parte, normalmente funziona su UDP, ha bisogno di più di una porta e viene comunemente filtrato dai firewall aziendali.

6

Penso che dovresti usare SIP perché supporta il protocollo Peer-to-Peer ed è su UDP/TCP. Supporta SIP SIMPLE e CPM vedi http://www.linkedin.com/groups/Differences-betwen-SIP-SIMPLE-CPM-1890406.S.150607448 per i dettagli.

Scriverete meno codice se si utilizza lo stack SIP open source in bundle con le funzionalità SIP SIMPLE e CPM.

  1. http://dev.telestax.com/jain-sip/

  2. Date un'occhiata a servlet SIP di Mobicent basate su Jain-SIP. https://code.google.com/p/sipservlets/. È possibile utilizzare Tomcat/JBoss per la distribuzione del server.

  3. https://code.google.com/p/openjsip/

è possibile aggiungere un server Presence leggero sulla parte superiore del server di opensource SIP per supporti presenza tra i client SIP.

Nello stack lato client, è possibile utilizzare lo stack Opensource di base.

Maggiori dettagli @ Looking for a SIP Stack for Android

https://code.google.com/p/android-rcs-ims-stack/