के बीच अंतर मैं HystrixCommand और HystrixObservableCommand के बीच अंतर को समझने की कोशिश कर रहा हूं। कारण मैं उलझन में हूं हिस्टिक्स कॉमैंड में एक निरीक्षण() या टूब्सर्जेबल() विधि है जो क्रमशः गर्म और ठंडे अवलोकन को उत्सर्जित करती है। तो HystrixObservableCommand बनाने की आवश्यकता क्या थी। अगर मैं पूरी तरह से गैर अवरुद्ध कॉल पर काम कर रहा हूं तो मुझे किस का उपयोग करना चाहिए? क्यूं कर?HystrixCommand और HystrixObservableCommand
उत्तर
:
यह आदेश अनिवार्य रूप से एक को अवरुद्ध आदेश है लेकिन अगर निरीक्षण() के साथ प्रयोग किया एक नमूदार मुखौटा प्रदान करता है
यह आदेश एक purel के लिए इस्तेमाल किया जाना चाहिए वाई गैर-अवरुद्ध कॉल पैटर्न। इस आदेश के कॉलर को रन() विधि द्वारा लौटे पर्यवेक्षकों की सदस्यता लेंगी।
अंतर यह है कि HystrixCommand डिफ़ॉल्ट रूप से एक अवरुद्ध प्रतिमान का समर्थन करता है, लेकिन यह भी एक मुखौटा के माध्यम से observables के माध्यम से गैर-अवरुद्ध व्यवहार प्रदान करता है, जबकि HystrixObservableCommand एक गैर अवरुद्ध सेटअप के लिए विशेष रूप से लागू किया गया था। मुझे पूरी तरह से यकीन नहीं है कि यह दो कार्यान्वयन में क्यों विभाजित है, लेकिन मुझे लगता है कि इसका कारण यह है कि मूल रूप से HystrixCommand ने गैर-अवरोधन का समर्थन नहीं किया। इसे a year or so after the original implementation के बारे में जोड़ा गया था। पूरी तरह से गैर-अवरुद्ध हिस्टिक्स कक्षा लिखने के लिए अभी क्लीनर हो सकता था।
यदि आप केवल गैर-अवरुद्ध कॉल के साथ काम कर रहे हैं, तो आपको संभवतः HystrixObservableCommand का उपयोग करना चाहिए। बेन क्रिस्टेनसेन, Hystrix devs में से एक, this post:
में यह सार अच्छी तरह से हालांकि, अगर आप अवरुद्ध कॉल लपेटकर कर रहे हैं, तो आप सिर्फ HystrixCommand उपयोग करने के साथ छड़ी चाहिए के रूप में है कि क्या इसके लिए बनाया गया है और यह चल रहा है चूक सब कुछ एक अलग थ्रेड में। का उपयोग कर HystrixCommand.observe() आपको समवर्ती, async संरचना प्रदान करेगा जो आप ढूंढ रहे हैं।
HystrixObservableCommand एसिंक, गैर-अवरुद्ध पर्यवेक्षकों को लपेटने के लिए है जो अतिरिक्त धागे की आवश्यकता नहीं है।
निक DeFazio, HystrixObservableCommand
रैप observables कि एक से अधिक आइटम का उत्सर्जन कर सकते हैं के एक कार्यान्वयन के जवाब देने के लिए इसके अतिरिक्त, जबकि HystrixCommand
,, एक से अधिक आइटम का उत्सर्जन नहीं होगा तब भी जब observe()
या .toObservable()
जो केवल एकल लपेटकर रहे हैं लागू मूल्य run()
विधि द्वारा पुनः प्राप्त किया गया।
- 1. @HystrixCommand फ़ॉलबैक विधि
- 2. Netflix Feign और Hystrix
- 3. एक हाइस्ट्रिक्स सर्किट ब्रेकर को कैसे लागू करें?
- 4. "#", "$", "%", "&", और "_" "\ #", "\ $", "\%", "\ &", और "\ _"
- 5. प्रदर्शन और सॉर्टिंग, और mysql और php
- 6. "और" और "या"
- 7. "बिटवाइस और" और सी ++
- 8. और बनाम * और | बनाम +
- 9. getters और setters और
- 10. सीएसएस "और" और "या"
- 11. {} और {}
- 12. और
- 13. $ (...) और `...`
- 14. $ * और $ @
- 15. और
- 16. $ # और $ {# @}
- 17. $ और()
- 18. जावास्क्रिप्ट शॉर्टैंड अगर-और और
- 19. क्षमताओं और लिनक्स और जावा
- 20. MySQL और PHP और jquery
- 21. जावा और सी # और .NET
- 22. UILabel और numberOfLines और sizeToFit:
- 23. RabbitMQ और चैनल और कनेक्शन
- 24. लिखें और और फिर विधियां
- 25. XHTML और और (एम्पसेंड) एन्कोडिंग
- 26. पायथन अगर स्थिति और "और"
- 27. multidplyr और group_by() और फ़िल्टर()
- 28. बोतल और स्केलिंग और संगामिति
- 29. बेंचमार्क और सी # और जावा
- 30. रेल और मार्कडाउन और संपादक