[pugMI] Affidabilita' servizi REST/HTTP

Davide Marrone davide a skebby.com
Lun 15 Set 2014 02:20:54 PDT


Ciao a tutti,
ho letto questo articolo:
http://www.infoq.com/articles/no-reliable-messaging

non recentissimo ma che mi sembra molto interessante per quanto riguarda 
lo scambio di messaggi in maniera affidabile su REST o in generale su 
HTTP, in particolare la parte "Once, and Only Once".

Mi chiedevo se qualcuno ha mai implementato dei meccanismi del genere 
per lo sviluppo di un API o se avete mai utilizzato delle API di altri 
che vi hanno chiesto espressamente che ogni richiesta sia univoca, ad 
esempio passando un ID e che l'API puo' rispondere con un codice di 
errore di "richiesta duplicata".

Per poter avere questo livello di affidabilita' il client che usa il 
servizio remoto deve essere per forza coinvolto, deve sapere che:

1) ogni richiesta deve essere univoca o deve avere un ID
2) se non riceve una risposta puo' (e deve) ripetere la richiesta e puo' 
stare tranquillo che non sara' processata due volte, es in caso di 
creazione ordini o operazioni che hanno a che fare con il billing
3) come risposta puo' ricevere un messaggio di codice di "richiesta 
duplicata" e lo deve gestire

@onebip: voi avete qualcosa del genere sulle API che date i clienti che 
possono billare un numero? Come fa il client a sapere se la sua 
richiesta e' stata processata, la connessione potrebbe saltare prima che 
ricevere il 200 o il messaggio di risposta.

Ciao
Davide


Maggiori informazioni sulla lista Milano