Implementeremo un sistema che riceverà un sacco di richieste attraverso l'interfaccia del servizio web. Dovremo accodare le richieste ed elaborarle in modo asincrono. Di conseguenza dovremo avere anche qualche coda di output con le risposte (QR). Il client del servizio web avrà la possibilità di interrogare le sue (e solo le sue) richieste elaborate in QR utilizzando un altro metodo di servizio web. Inoltre, il cliente avrà la possibilità di trovare la risposta esatta dal QR fornendo l'id della richiesta (restituita dopo aver inviato la richiesta). Inoltre, il cliente sarà abel cancellare la richiesta dal QR. Ci saranno 60 richieste al secondo.
La domanda è come implementare il QR. Abbiamo bisogno di affidabilità e durata (nulla è permesso di essere perso).
Ora la domanda su come questo può essere implementato .... Ci sono diverse opzioni, che mi vengono in mente:
- Uso di RDBMS - ma questo è tutt'altro che ideale in quanto le prestazioni non sarebbero ideali
- impiegano qualcosa come Redis o memcached - con una coda in entrata in redis e per ogni elenco di client con elementi elaborati (risposte), ma sono scettico sull'affidabilità e la durabilità. Non possiamo permetterci di perdere nessuna delle richieste o risposte.
- Qualche altra soluzione noSQL?