Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Redis

Redis के साथ रीयल-टाइम A/B टेस्टिंग टूल बनाएं: चरण-दर-चरण मार्गदर्शिका

A/B टेस्टिंग आज की डिजिटल अर्थव्यवस्था में प्रतिस्पर्धा करने वाले मार्केटर्स और वेबसाइट मालिकों के लिए एक अनिवार्य संपत्ति बन गई है। यह उपयोगकर्ताओं को मौजूदा विचारों का परीक्षण करने, नए विचारों के साथ प्रयोग करने और जो काम करता है और जो नहीं करता है उसे उजागर करने की अनुमति देता है।

इस जानकारी के बिना, वेब पेजों को अनुकूलित करने की कोशिश करना एक निराशाजनक और समय लेने वाली प्रक्रिया हो सकती है। लेकिन दुर्भाग्य से, A/B टेस्टिंग सॉफ्टवेयर महंगा हो सकता है, जिससे कई लोग इसके लाभों तक पहुंच से वंचित रह जाते हैं।

लेकिन Redis के साथ, प्रोग्रामर Thiago Camargo इन बाधाओं को दूर करने में सक्षम थे एक खुला A/B टेस्टिंग टूल बनाकर जो रीयल-टाइम में काम कर सकता है। Redis की शक्तिशाली डेटा प्रोसेसिंग विशेषताएं उपयोगकर्ताओं को अपनी पसंद के चर के साथ प्रयोग करने और अपने वेब पेजों को अनुकूलित करने के सबसे प्रभावी तरीकों की खोज करने की अनुमति देती हैं।

आइए देखें कि Thiago इस एप्लिकेशन को एक साथ रखने में कैसे सक्षम था। लेकिन इससे पहले कि हम आगे बढ़ें, हम यह बताना चाहेंगे कि हमारे पास Redis Launchpad पर आपके लिए खोजने के लिए नवीन अनुप्रयोगों की एक विस्तृत विविधता है।

तो इस पोस्ट के बाद ब्राउज़ करना सुनिश्चित करें!

  1. आप क्या बनाएंगे?
  2. आपको क्या चाहिए?
  3. आर्किटेक्चर
  4. शुरुआत करना
  5. यह कैसे काम करता है

1. आप क्या बनाएंगे?

आप एक शक्तिशाली लेकिन सरल A/B टेस्टिंग टूल बनाएंगे जो स्केलेबल है और रीयल-टाइम में काम करता है। नीचे हम आपको दिखाएंगे कि इस एप्लिकेशन को नीचे से कैसे बनाया जाए, यह हाइलाइट करते हुए कि कौन से घटक आवश्यक हैं और उनकी कार्यक्षमता के साथ।

2. आपको क्या चाहिए?

  • Kotlin: एक ओपन-सोर्स प्रोग्रामिंग भाषा के रूप में उपयोग किया जाता है जिसका उपयोग Google द्वारा Android ऐप विकसित करने के लिए भी किया जाता है।
  • Gradle: बहु-भाषा सॉफ्टवेयर विकास के लिए बिल्ड-ऑटोमेशन टूल के रूप में उपयोग किया जाता है।
  • Lettuce: नॉन-ब्लॉकिंग रिएक्टिव एप्लिकेशन बनाता है
  • RedisGraph: ग्राफ में आसन्न मैट्रिक्स को प्रतिबिंबित करने के लिए विरल मैट्रिक्स और रैखिक बीजगणित का उपयोग करके ग्राफ को क्वेरी करता है
  • RedisTimeSeries: आपको लाखों नमूनों और घटनाओं को हाइपर-दक्षता के साथ अंतर्ग्रहण और क्वेरी करने की अनुमति देता है।
  • RedisJSON: Redis कुंजियों से JSON मानों को संग्रहीत, अपडेट और लाने की अनुमति देता है

3. आर्किटेक्चर

Redis के साथ रीयल-टाइम A/B टेस्टिंग टूल बनाएं: चरण-दर-चरण मार्गदर्शिका
A/B टेस्टिंग टूल आर्किटेक्चर
  • Swagger पर एक प्रयोग बनाया जाता है उन चरों के आधार पर जिन्हें आप अपनी वेबसाइट पर परीक्षण करना चाहते हैं। इस उपयोगकर्ता ने बिक्री पर विभिन्न रंगों के प्रभाव का परीक्षण करना चुना है।
  • ट्रिगर घटनाएं उन उपयोगकर्ताओं को निर्धारित करती हैं जो स्वचालित रूप से प्रयोग में नामांकित होंगे।
  • सदस्यता के लिए साइन अप करने वाले उपयोगकर्ताओं को ट्रिगर घटना (रूपांतरण) के रूप में रिकॉर्ड किया जाएगा। प्रत्येक ट्रिगर घटना का रंग भी परिणाम मापने के लिए रिकॉर्ड किया जाएगा।

A/B टेस्टिंग क्या है?

स्प्लिट टेस्टिंग के रूप में भी जाना जाता है, A/B टेस्टिंग एक व्यवस्थित प्रयोग प्रक्रिया को संदर्भित करता है जहां एक चर के दो या अधिक संस्करण वेबसाइट विज़िटर को दिखाए जाते हैं ताकि यह निर्धारित किया जा सके कि रूपांतरण पर किसका अधिक प्रभाव पड़ता है।

यह आपके ब्रांड, उत्पादों और सेवाओं को बाज़ार में अधिक प्रभावी ढंग से स्थान देने के तरीके पर स्पष्टता जोड़ने के लिए डिज़ाइन किया गया है।

मान लें उदाहरण के लिए आपके पास अपनी वेबसाइट पर एक उत्पाद है जिसे आप बेचने की कोशिश कर रहे हैं। एक चर जिसके साथ आप प्रयोग कर सकते हैं वह उत्पाद के बगल में कॉल टू एक्शन (CTA) बटन होगा। CTA को A/B टेस्ट करने के कई अलग-अलग तरीके हैं, जिनमें शामिल हैं:

  1. प्लेसमेंट
  2. डिज़ाइन
  3. रंग
  4. आकार
  5. कॉपीराइटिंग

इन चरों को स्प्लिट टेस्ट करके, आप पता लगा लेंगे कि आपका CTA का कौन सा संस्करण रूपांतरण बढ़ाने के लिए सबसे इष्टतम होने जा रहा है।

4. शुरुआत करना

पूर्वापेक्षाएँ

  • Docker
  • Gradle 7.2 इंस्टॉल करें
  • Maven 3.8.1
  • OpenJDK इंस्टॉल करें
  • Swagger API दस्तावेज़ीकरण

चरण 1: रिपॉजिटरी क्लोन करें

चरण 2. बिल्ड कार्य करना

चरण 3: Redis मॉड्यूल सेट करें

यदि आप Docker Desktop का उपयोग कर रहे हैं, तो सुनिश्चित करें कि वॉल्यूम माउंट के लिए फ़ाइल साझाकरण विकल्प सक्षम है। Redis सेट करने के लिए नीचे दिए गए कोड का उपयोग करें:

चरण 4. एप्लिकेशन चलाना

Docker शुरू करने के लिए नीचे दिए गए कोड का उपयोग करें:

यह कैसे काम करता है

प्रयोग API

यहां हम आपको दिखाने जा रहे हैं कि ट्रिगर-आधारित भारित नामांकन के साथ स्केलेबल A/B टेस्टिंग प्रयोग कैसे बनाएं।

प्रयोग कैसे बनाएं

इस चरण में, हम आपको दिखाएंगे कि एक ऐसा प्रयोग कैसे बनाएं जो आपको विभिन्न चरों का A/B टेस्ट करने की अनुमति देता है। हम एक मार्केटर के स्थान पर खुद को रखने जा रहे हैं जो विभिन्न स्क्रीन रंगों को स्प्लिट टेस्ट करना चाहता है ताकि यह देखा जा सके कि उनका बिक्री पर क्या प्रभाव पड़ता है।

शुरू करने के लिए, नीचे दिए गए कोड का उपयोग करें।

यह ध्यान देने योग्य है कि हमने शीर्ष पर 'goalIds' को 'purchase' में बदल दिया ताकि प्रत्येक स्क्रीन रंग से की गई बिक्री की संख्या को मापा जा सके। उसके नीचे, हमने प्रयोग की 'id' को 'subscription1' बना दिया है।

ट्रिगर घटना निर्धारित करने के लिए, हमने 'user-plan-screen-view' डाला। इसका मतलब है कि जब कोई घटना ट्रिगर होती है, तो उपयोगकर्ता स्वचालित रूप से प्रयोग में नामांकित हो जाएगा।

अगला, हमने वेरिएंट को 'red' और 'blue' के रूप में पहचाना क्योंकि ये दो चर हैं जिनका हम A/B टेस्ट करेंगे।

प्रयोग कैसे पुनर्प्राप्त करें

प्रतिक्रिया।

रिमोट कॉन्फिग API

यहां हम आपको दिखाएंगे कि एक डायनामिक और स्केलेबल रिमोट क्लाइंट कॉन्फिगरेशन सेवा (Firebase रिप्लेसमेंट) कैसे बनाएं।

रिमोट कॉन्फिग कैसे अपडेट करें

रिमोट कॉन्फिग कैसे पुनर्प्राप्त करें

प्रतिक्रिया

इवेंट API

इस चरण में Timeseries इवेंट इंडेक्सिंग शामिल है।

इवेंट कैसे पुश करें

सारांश API - जेनेरिक सारांश सेवा

यहां एक सरल और लचीली सारांश सेवा है जो कई प्रकार के अनुप्रयोगों के सारांश को रखने और बनाए रखने में सक्षम है। इनमें शामिल हैं: गेम स्कोरबोर्ड, उत्पाद रेटिंग, उपयोगकर्ता रेटिंग, वृद्धिशील मेट्रिक्स और बहुत कुछ।

सारांश अपडेट करना

सारांश प्राप्त करना

प्रतिक्रिया:

ड्रॉअर API - जेनेरिक Key/Value सेवा

लचीला संपत्ति भंडारण

ड्रॉअर अपडेट करना

ड्रॉअर प्राप्त करना

प्रतिक्रिया:

उपयोग किए गए कुछ Redis क्वेरी

नीचे उपयोग किए गए अधिकांश कमांड Lettuce Redis कमांड एनोटेशन का उपयोग करके लागू किए गए हैं।

Graph

  • enrollEmitterOnExperiment
  • fetchParticipantsOnExperiment
  • graphQuery

TimeSeries

  • pushEvent

JSON

  • setObject
  • getObject
  • setPathValue
  • getPathValue

Core

  • HSET
  • HGET / HGETALL
  • HEXISTS
  • …

निष्कर्ष: सभी के लिए A/B टेस्टिंग सुलभ बनाना

A/B टेस्टिंग आज के डिजिटल खेल के मैदान में प्रतिस्पर्धा करने वाले किसी भी मार्केटर का अभिन्न अंग बन गया है। लेकिन इस सॉफ्टवेयर को प्राप्त करना महंगा हो सकता है, जिससे कई लोग उप-इष्टतम वेबसाइट के साथ काम करने के लिए मजबूर होते हैं। और इसे और भी जटिल बनाने के लिए, अपना खुद का स्प्लिट-टेस्टिंग सॉफ्टवेयर बनाने की अपनी प्रोग्रामिंग कठिनाइयां हैं।

ऐसा एप्लिकेशन बनाने के लिए एक बहुमुखी और शक्तिशाली डेटाबेस की आवश्यकता होती है जो घटकों के बीच डेटा को कुशलतापूर्वक संचारित करने में सक्षम हो। फिर भी इन बाधाओं के बावजूद, Redis ने इन सभी बाधाओं को दूर कर दिया।

सिर्फ अपने लैपटॉप पर Redis का उपयोग करके, आप अपनी वेबसाइट पर किसी भी चर का A/B टेस्ट कर सकते हैं और अपने लक्ष्य बाजार के करीब पहुंच सकते हैं। यदि आप इस एप्लिकेशन को कैसे बनाया गया था, इसके बारे में अधिक खोज करना चाहते हैं, तो इस YouTube वीडियो को देखना सुनिश्चित करें।

फिर भी इन मांगों के बावजूद, Redis की उन्नत डेटा प्रोसेसिंग क्षमताओं ने घटकों के बीच डेटा ट्रांसमिशन को हाइपर-कुशल और विश्वसनीय दोनों बना दिया, एक अत्यधिक प्रतिक्रियाशील एप्लिकेशन बनाया।

इसका मतलब कोई लैग नहीं, कोई देरी नहीं, और उपयोगकर्ता और एप्लिकेशन के बीच घर्षण का कोई कारण नहीं। सिर्फ अपने लैपटॉप पर Redis का उपयोग करके, आप अपनी वेबसाइट पर किसी भी चर का A/B टेस्ट कर सकते हैं और अपने लक्ष्य बाजार के करीब पहुंच सकते हैं।

यदि आप इस एप्लिकेशन को कैसे बनाया गया था, इसके बारे में अधिक खोज करना चाहते हैं, तो इस YouTube वीडियो को देखना सुनिश्चित करें।

यदि आपने इस पोस्ट का आनंद लिया है तो हमारे पास Redis Launchpad पर आपके लिए खोजने के लिए कई और हैं। रीयल-टाइम वाहन ट्रैकिंग सिस्टम बनाने से लेकर विकासशील देशों में फसल बीमाकर्ताओं की रक्षा के लिए शक्तिशाली ड्रोन सिस्टम बनाने तक, Redis का उपयोग दुनिया भर के प्रोग्रामर्स द्वारा रोजमर्रा की जिंदगी को बेहतर बनाने के लिए किया गया है।

आप Redis के साथ क्या कर सकते हैं?

Redis के साथ रीयल-टाइम A/B टेस्टिंग टूल बनाएं: चरण-दर-चरण मार्गदर्शिका
Redis Launchpad पर अधिक ऐप्स खोजें

ऐप किसने बनाया?

Redis के साथ रीयल-टाइम A/B टेस्टिंग टूल बनाएं: चरण-दर-चरण मार्गदर्शिका
Thiago Camargo

Thiago Camargo

यदि आप इस एप्लिकेशन का आनंद लेते हैं तो Thiago के GitHub पेज पर जाना सुनिश्चित करें ताकि वह जिन सभी परियोजनाओं में शामिल रहे हैं, उनके साथ अद्यतित रहें।

  1. Redis में EXPIRE, EXPIREAT, PEXPIRE कमांड का उपयोग करके कुंजी की समाप्ति सेट करें Redis में EXPIRE, EXPIREAT, PEXPIRE कमांड का उपयोग करके कुंजी की समाप्ति सेट करें

    इस ट्यूटोरियल में, हम सीखेंगे कि Redis EXPIRE, PEXPIRE, EXPIREAT और PEXPIREAT कमांड का उपयोग करके किसी कुंजी पर समाप्ति समय (टाइमआउट) कैसे सेट करें। सेकंड में समाप्ति समय :- किसी कुंजी पर सेकंड में समाप्ति समय सेट करने के लिए, हम redis-cli में Redis EXPIRE कमांड का उपयोग करेंगे। यह सेकंड की संख्या

  1. Redis में PERSIST कमांड का उपयोग करके कुंजी की समाप्ति कैसे हटाएं Redis में PERSIST कमांड का उपयोग करके कुंजी की समाप्ति कैसे हटाएं

    इस ट्यूटोरियल में, हम सीखेंगे कि redis-cli में कमांड PERSIST का उपयोग करके Redis डेटास्टोर में संग्रहीत किसी कुंजी की समाप्ति समय (टाइमआउट) को कैसे हटाएं। जब हम EXPIRE/PEXPIRE या EXPIREAT/PEXPIREAT का उपयोग करके किसी कुंजी पर समाप्ति समय सेट करते हैं, तो इसकी स्थिति Volatile हो जाती है (समाप्ति समय

  1. Jedis के साथ Redis Pub/Sub कार्यान्वित करें: चरण-दर-चरण गाइड Jedis के साथ Redis Pub/Sub कार्यान्वित करें: चरण-दर-चरण गाइड

    Jedis लाइब्रेरी Jedis Redis डेटास्टोर के लिए एक Java क्लाइंट लाइब्रेरी है। यह छोटी और उपयोग में बहुत आसान है, और Redis 2.8.x, 3.x.x और उससे ऊपर के डेटास्टोर के साथ पूरी तरह से संगत है। Redis Pub/Sub सिस्टम Redis पब्लिश/सब्सक्राइब मैसेजिंग पैराडाइम को लागू करता है। इस मैसेजिंग पैराडाइम के अनुसार, मै