Sono curioso di sapere come risolvere il problema di concorrenza per un'API RESTful. Più in particolare, ho una collezione di oggetti che richiedono l'esame e l'aggiornamento manuale, ad es. un numero di righe che richiedono una colonna aggiornata manualmente; tuttavia, se apro l'API a un certo numero di client, verranno tutti catturati dall'alto verso il basso, quindi molti utenti riempiranno la colonna della stessa riga nello stesso momento. Preferirei non avere collisioni e il modo semplice e statico è di scaricare gli articoli in una coda del servizio e farli scoppiare mentre le persone li richiedono.Le API RESTful devono essere apolidi, ma per quanto riguarda la concorrenza?
Qual è la versione senza stato di questo? Hash per indirizzo IP, o afferrare a caso le righe in base all'ID?
:: :: aggiornamento
"Hrm, quindi deve essere semplicemente senza stato dal punto di vista del cliente?
che rende sicuramente un sacco di senso. Stavo leggendo un articolo (ibm.com/developerworks/webservices/library/ws-restful) su API RESTful, e dopo aver incontrato il bit sul paging, ero preoccupato che la mia coda abbastanza statica fosse simile all'incremento di una pagina, ma in realtà sono abbastanza diversi come la "pagina successiva" è relativa sul lato client, mentre "pop" è sempre stateless per il client: non importa ciò che è stato scoppiato prima.
Grazie per avermi liberato la testa! " -me
Non vedo davvero il problema/domanda qui. Le API RESTful possono essere - e IME sono quasi sempre - supportate da server stateful. Potresti chiarire il problema che stai cercando di risolvere? Gli e-tag –
possono essere utilizzati per fornire la concorrenza –
Hrm, quindi deve essere semplicemente stateless dal punto di vista del client? Questo ha sicuramente molto senso. Stavo solo leggendo un articolo (https://www.ibm.com/developerworks/webservices/library/ws-restful/) sulle API RESTful, e dopo aver incontrato il bit sul paging, ero preoccupato che la mia coda abbastanza statica fosse simile ad aumentare di una pagina, ma in realtà sono abbastanza diversi in quanto la "pagina successiva" è relativa sul lato client, mentre "pop" è sempre stateless per il client. Non importa ciò che è stato scoppiato prima. Grazie per avermi liberato la testa! –