Non intendo iniziare qui una guerra santa, ma la maggior parte dei servizi Internet (flickr, twitter, facebook e simili) hanno lanciato SOAP a favore dei servizi web RESTful e JSON come formato serializzato. Sebbene essenzialmente lo stesso, i servizi REST si basano sul metodo url e http per definire cosa dovrebbe essere fatto, ad esempio
GET /articles - list all articles
POST /articles - add a new article
PUT /articles/123 - update article 123 with new data
JSON - descritto in json.org - è anche più semplice di XML e, sebbene forse irrilevante, ti farà risparmiare qualche byte per richiesta. Seguendo l'esempio precedente, ecco come sarebbe descritto un articolo nella notazione JSON:
{
"id": 123,
"author": "Cyril",
"content": "Hello, this is an article",
"tags": [ "gamedev", "webservices", "multiplayer" ]
}
Per l'IOS c'è questo bell'articolo http://petermcintyre.wordpress.com/2010/11/04/consume-json-rest-in-ios/ che menziona
http://code.google.com/p/json-framework / per l'analisi e la generazione dei dati.
Essendo a turni, puoi fare affidamento sulle sessioni http sul server per mantenere lo stato, quindi non è necessario mantenere una connessione socket persistente al server. Qualsiasi linguaggio lato server lo supporta (php, python, java, ecc.).
Questa architettura consente di scalare in orizzontale (aggiungendo più server) in modo trasparente.