Il y a eu une bonne quantité de la recherche récente en considérant combien il RESTE HTTP appels pourrait remplacer le message de la file d'attente concept.
Si vous introduisez la notion de processus et une tâche comme une ressource, la nécessité pour le centre de messagerie de la couche commence à s'évaporer.
Ex:
POST /task/name
- Returns a 202 accepted status immediately
- Returns a resource url for the created task: /task/name/X
- Returns a resource url for the started process: /process/Y
GET /process/Y
- Returns status of ongoing process
Une tâche peut avoir plusieurs étapes pour l'initialisation, et un processus de retour d'état quand il est interrogé ou par la POSTE à une URL de callback.
C'est très simple, et devient très puissant quand vous vous rendez compte que vous pouvez désormais vous abonner à un flux rss/atom de tous les processus en cours et les tâches sans couche intermédiaire. Tout système de file d'attente va nécessiter une certaine sorte de web front-end de toute façon, et ce concept a construit en sans une autre couche de code personnalisé.
Vos ressources d'exister jusqu'à ce que vous les supprimiez, ce qui signifie que vous pouvez afficher les informations d'historique de temps après le processus et de la tâche complète.
Vous avez construit dans le service de découverte, même pour une tâche qui a de multiples étapes, sans supplément compliqué protocoles.
GET /task/name
- returns form with required fields
POST (URL provided form's "action" attribute)
Votre service à la découverte d'un formulaire HTML universelle et format lisible par l'homme.
L'ensemble des flux peut être utilisée par programme ou par un humain, à l'aide universellement acceptée outils. C'est un client, et donc Reposant. Chaque outil créé pour le web peut piloter vos processus d'affaires. Vous avez encore suppléant message chaînes en Affichant de manière asynchrone dans un tableau distinct des serveurs de journalisation.
Après vous considérez que c'est pour un certain temps, vous vous asseyez en arrière et vous commencez à réaliser que le REPOS peut simplement éliminer la nécessité d'une file d'attente de messagerie et d'un ESB tout à fait.
http://www.infoq.com/presentations/BPM-with-REST