क्या MQTT दलाल हैं जो QoS 1/2 संदेशों को डिस्क पर बनाए रखते हैं?


12

अब तक EMQ (Erlang MQTT Broker) QoS 1/2 संदेशों को डिस्क पर जारी रखने के लिए प्रतीत नहीं होता है: EMQ QoS 1/2 संदेशों को कैसे जारी रखता है?

इसलिए अप्रत्याशित सर्वर रिबूट, मेमोरी लिमिट या अन्य ईवेंट संदेशों के खो जाने के बावजूद क्यूओएस 1/2 स्तर के संदेश कम से कम या ठीक एक बार डिलीवर होने चाहिए

क्या MQTT ब्रोकर हैं जो QoS 1/2 संदेशों को डिस्क पर बनाए रखना चाहते हैं ताकि डिलीवरी सुनिश्चित हो सके?


जवाबों:


9

मुझे लगता है कि मॉस्किटो इन-मेमोरी संदेशों को डिस्क में सहेजता है।

दृढ़ता [सच | असत्य] यदि सत्य, कनेक्शन, सदस्यता और संदेश डेटा को persistence_location द्वारा निर्धारित स्थान पर mosquitto.db में डिस्क पर लिखा जाएगा। जब मच्छर को फिर से शुरू किया जाता है, तो यह मच्छर में संग्रहीत जानकारी को फिर से लोड करेगा। जब मच्छर बन्द हो जाता है और आटोसैव_इंटरवल द्वारा परिभाषित आवधिक अंतराल पर डेटा को लिखा जाएगा। दृढ़ता डेटाबेस का लेखन भी मच्छर SIGUSR1 सिग्नल भेजकर मजबूर किया जा सकता है। यदि गलत है, तो डेटा केवल मेमोरी में संग्रहीत किया जाएगा। झूठे की अवहेलना।


7

VerneMQ एक MQTT ब्रोकर का एक उदाहरण है जो स्वीकार किए गए QoS1 / 2 संदेशों की डिलीवरी की गारंटी देता है क्योंकि वे डिस्क (LevelDB का उपयोग करके) में लिखे गए हैं। VerneMQ, एक तरह से, EMQ के समान है, यह ओपन-सोर्स भी है और क्लस्टरिंग (हालांकि एक अलग तकनीक का उपयोग करके) का समर्थन करता है। पूर्ण प्रकटीकरण, मैं एक VerneMQ इंजीनियर हूँ।


साइड सवाल: क्या आप लोगों ने परीक्षण और मूल्यांकन के लिए सार्वजनिक VerneMQ दलाल की पेशकश की?
रॉस

1
हाय @Ross, हमारे पास public.vernemq.com:1883 पर चलने वाला एक सार्वजनिक उदाहरण है, लेकिन आप लोड परीक्षण नहीं कर पाएंगे क्योंकि यह एक छोटी आभासी मशीन पर चल रहा है - इसलिए यह बहुत अच्छा प्रदर्शन होने की उम्मीद नहीं है । इसमें एकल IP से उत्पन्न होने वाले समवर्ती कनेक्शन की संख्या पर भी प्रतिबंध है। यदि आप चाहें तो हमसे संपर्क कर सकते हैं और हमें यह देखकर खुशी होगी कि क्या हम आपके उपयोग-मामले का समर्थन कर सकते हैं। आप हमें vernemq डॉट कॉम पर जानकारी लिख सकते हैं या संपर्क फ़ॉर्म यहाँ भर सकते हैं: vernemq.com/services.html
लार्स

1
धन्यवाद, मुझे लोड परीक्षण करने की आवश्यकता नहीं है, बस यह जांचने के लिए कि मैं विभिन्न दलालों से जुड़ सकता हूं और देख सकता हूं कि क्या कोई संगतता मुद्दे हैं।
रोस

1
यह याद दिलाता है कि, मुझे, सार्वजनिक संस्करण अपेक्षाकृत पुराना है - मैं देखूंगा कि क्या मैं इसे नवीनतम रिलीज में अपग्रेड नहीं कर पा रहा हूं।
लार्स हेसेल क्रिस्टेंसन

5

HiveMQ सत्र डेटा को बनाए रखने के लिए विभिन्न विकल्प प्रदान करता प्रतीत होता है, जिसमें QoS 1/2 संदेश भी शामिल है।

दृढ़ता के विकल्प यहां सूचीबद्ध हैं :

  • फ़ाइल दृढ़ता
  • इन-मेमोरी दृढ़ता

डिफ़ॉल्ट रूप से, HiveMQ फ़ाइल दृढ़ता का उपयोग करेगा , जो डिस्क को सभी डेटा बचाता है ताकि इसे किसी भी समय पुनर्प्राप्त किया जा सके।

ब्रोकर पुनरारंभ के बीच डेटा की निरंतरता की गारंटी देने के लिए, HiveMQ डिफ़ॉल्ट रूप से डिस्क दृढ़ता का उपयोग करता है। इसका मतलब है कि भले ही ब्रोकर बंद हो जाए या क्रैश हो जाए, सभी डेटा संरक्षित रहेंगे और पुनरारंभ होने के बाद ब्रोकर अपना ऑपरेशन जारी रख सकता है जैसे कि कुछ भी नहीं हुआ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.