SkillByAIइंटरैक्टिव संस्करण खोलें →

पाठ 20 / 20

मैसेज ब्रोकर के रूप में रेडिस

Redis Pub/Sub की Streams से तुलना करें और जानें कि Kafka या RabbitMQ जैसा dedicated broker कब चुनना चाहिए।

Pub/Sub फ़ायर-एंड-फ़ॉर्गेट है

साधारण Pub/Sub संदेश केवल अभी जुड़े subscribers को देता है — कुछ भी स्टोर नहीं होता, इसलिए ऑफ़लाइन consumer उसे हमेशा के लिए मिस कर देता है। Redis Streams (XADD/XREAD) एक टिकाऊ, दोबारा-पढ़ा जा सकने वाला लॉग जोड़ता है, जब संदेश खोना नहीं चाहिए।

Kafka का विकल्प नहीं

हल्के, कम-देरी वाले मैसेजिंग के लिए रेडिस बेहतरीन है; बड़े, गारंटीड-टिकाऊ, कई-दिन लंबे इवेंट स्ट्रीम के लिए Kafka या RabbitMQ जैसा समर्पित ब्रोकर आमतौर पर बेहतर फ़िट है।

त्वरित जाँच: क्या साधारण रेडिस Pub/Sub ऑफ़लाइन subscribers के लिए संदेश स्टोर करता है?

  • हाँ, हमेशा के लिए
  • हाँ, पर केवल 24 घंटे के लिए
  • नहीं — केवल अभी जुड़े subscribers को मिलता है
  • केवल यदि AOF बंद हो
Answer

नहीं — केवल अभी जुड़े subscribers को मिलता है — Pub/Sub में कोई स्टोरेज नहीं है — जब ऑफ़लाइन consumers के लिए संदेश बचाना हो तो Redis Streams उपयोग करें।

अंतिम क्विज़ 1/8

अंतिम क्विज़

त्वरित जाँच: Live leaderboard के लिए कौन-सा Redis data type सबसे अच्छा है?

  • List
  • String
  • Sorted set
  • Pub/Sub
Answer

Sorted set — Sorted sets members को score के अनुसार अपने-आप rank में रखते हैं।

अंतिम क्विज़ 2/8

अंतिम क्विज़

त्वरित जाँच: Production server पर keys को सुरक्षित रूप से iterate करने वाला command कौन-सा है?

  • KEYS *
  • FLUSHALL
  • DEBUG
  • SCAN
Answer

SCAN — SCAN keyspace को छोटे non-blocking batches में चलता है।

अंतिम क्विज़ 3/8

अंतिम क्विज़

त्वरित जाँच: SET key value EX 60 क्या करता है?

  • Stores the value and expires it after 60 seconds
  • Stores it for 60 days
  • Appends 60 to the value
  • Locks the key
Answer

Stores the value and expires it after 60 seconds — EX value के साथ seconds में TTL सेट करता है।

अंतिम क्विज़ 4/8

अंतिम क्विज़

त्वरित जाँच: Cache-aside में cache miss पर क्या होता है?

  • Redis queries the database itself
  • The app reads the database and then fills the cache
  • The request fails
  • The cache is flushed
Answer

The app reads the database and then fills the cache — Application ही data को cache में load करने की जिम्मेदारी संभालता है।

अंतिम क्विज़ 5/8

अंतिम क्विज़

त्वरित जाँच: कौन-सा persistence option हर write command log करता है?

  • RDB
  • Pub/Sub
  • AOF
  • Streams only
Answer

AOF — AOF commands replay करके न्यूनतम हानि के साथ dataset दोबारा बनाता है।

अंतिम क्विज़ 6/8

अंतिम क्विज़

त्वरित जाँच: Pure cache के लिए कौन-सी maxmemory-policy उपयुक्त है?

  • noeviction
  • volatile-ttl only
  • none
  • allkeys-lru
Answer

allkeys-lru — सबसे कम हाल में उपयोग हुई keys हटाने से hot data memory में रहता है।

अंतिम क्विज़ 7/8

अंतिम क्विज़

त्वरित जाँच: Redis को सीधे internet पर expose करने से क्यों बचें?

  • It was designed for trusted networks and can be hijacked
  • It becomes slower
  • It stops persisting
  • It disables TTLs
Answer

It was designed for trusted networks and can be hijacked — Private interfaces से bind करें, auth जरूरी रखें और firewall उपयोग करें।

अंतिम क्विज़ 8/8

अंतिम क्विज़

त्वरित जाँच: कौन-सा Redis feature messages का durable, replayable log रखता है?

  • Plain Pub/Sub
  • Streams
  • SCAN
  • EXPIRE
Answer

Streams — Streams (XADD/XREAD) बाद में जुड़ने वाले consumers के लिए messages रखते हैं।