रीसेंट HTTP कॉल संदेश कतार अवधारणा को कैसे बदल सकता है, इस पर विचार करने में हाल ही में अनुसंधान की एक उचित मात्रा हुई है।
यदि आप किसी प्रक्रिया की अवधारणा और संसाधन के रूप में किसी कार्य का परिचय देते हैं, तो मध्य संदेश परत की आवश्यकता वाष्पीभूत होने लगती है।
उदाहरण के लिए:
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
एक कार्य में आरंभीकरण के लिए कई चरण हो सकते हैं, और जब पोल या POST को कॉलबैक URL पर पूरा किया जाता है, तो यह प्रक्रिया वापस आ सकती है।
यह मृत सरल है, और काफी शक्तिशाली हो जाता है जब आपको पता चलता है कि अब आप बिना किसी मध्य परत के सभी चल रही प्रक्रियाओं और कार्यों के एक आरएसएस / एटम फ़ीड की सदस्यता ले सकते हैं। किसी भी पंक्तिबद्ध प्रणाली को किसी भी तरह के वेब फ्रंट एंड की आवश्यकता होती है, और इस अवधारणा को कस्टम कोड की एक और परत के बिना बनाया गया है।
आपके संसाधन तब तक मौजूद हैं जब तक आप उन्हें हटा नहीं देते हैं, जिसका अर्थ है कि आप प्रक्रिया और कार्य पूरा होने के लंबे समय बाद ऐतिहासिक जानकारी देख सकते हैं।
आपने किसी भी अतिरिक्त जटिल प्रोटोकॉल के बिना, कई चरणों वाले कार्य के लिए भी सेवा खोज में निर्माण किया है।
GET /task/name
- returns form with required fields
POST (URL provided form's "action" attribute)
आपकी सेवा खोज एक HTML रूप है - एक सार्वभौमिक और मानव पठनीय प्रारूप।
सार्वभौमिक रूप से स्वीकृत उपकरणों का उपयोग करके पूरे प्रवाह को प्रोग्राम या मानव द्वारा उपयोग किया जा सकता है। यह एक क्लाइंट संचालित है, और इसलिए रेस्टफुल है। वेब के लिए बनाया गया हर टूल आपकी व्यावसायिक प्रक्रियाओं को चला सकता है। आपके पास अभी भी वैकल्पिक रूप से लॉग सर्वर के एक अलग सरणी में असंगत रूप से POST करके संदेश चैनल हैं।
थोड़ी देर के लिए विचार करने के बाद, आप वापस बैठते हैं और महसूस करना शुरू करते हैं कि REST मैसेजिंग कतार और ESB की आवश्यकता को पूरी तरह से समाप्त कर सकता है।
http://www.infoq.com/presentations/BPM-with-REST