रक्तदान जीवन बचाने का एक आसान और सुरक्षित तरीका है। फिर भी, सही ब्लड टाइप वाले डोनर्स और मरीजों को मिलाने में जटिलताएं बनी रहती हैं। ब्लड डोनेशन के मामले में समय एक सीमित संसाधन है, जिससे डोनर्स को सही मरीजों के साथ जोड़ना बेहद जरूरी हो जाता है।
यह प्रक्रिया जितनी कुशल होगी, उतनी ही ज्यादा जानें बचाई जा सकेंगी। इस चुनौती को स्वीकार किया भानु कोरथिवाडा ने, जिन्होंने एक शानदार एप्लिकेशन 'जिंदगी' बनाई, जो ब्लड डोनर्स को आदर्श मरीजों से मिलाकर पूरी ब्लड डोनेशन प्रक्रिया को तेज करती है।
इस एप्लिकेशन के केंद्र में डेटा को अधिकतम दक्षता के साथ प्रसारित करने की मूलभूत आवश्यकता थी, ताकि यूजर्स को रियल-टाइम अपडेट मिल सकें। कोई भी लैग या देरी यूजर अनुभव को खराब करेगी और ब्लड डोनेशन की तेज मांगों के साथ तालमेल नहीं रख पाएगी।
इन मांगों के कारण, Redis को एप्लिकेशन के मुख्य डेटाबेस के रूप में उपयोग किया गया, जिसका प्रदर्शन पर नाटकीय प्रभाव पड़ा। डेटा अधिकतम दक्षता के साथ प्रसारित हुआ। यूजर्स को रियल-टाइम अपडेट मिले। और ब्लड डोनेशन निर्बाध हो गया।
आइए देखें कि भानु ने इस एप्लिकेशन को कैसे बनाया। लेकिन इससे पहले कि हम इस ऐप की बारीकियों की जांच करें, हम बताना चाहेंगे कि Redis Launchpad पर आपके लिए अन्य रोमांचक ऐप्स की एक शानदार रेंज मौजूद है।
इस पोस्ट के बाद उन्हें जरूर देखें!
ब्लड डोनर्स को मरीजों से जोड़ने वाला ऐप कैसे बनाएं
- आप क्या बनाएंगे?
- आपको क्या चाहिए?
- आर्किटेक्चर
- शुरुआत कैसे करें
- एप्लिकेशन का उपयोग कैसे करें?
- यह कैसे काम करता है?
1. आप क्या बनाएंगे?
आप एक ऐसा एप्लिकेशन बनाएंगे जो समान ब्लड टाइप वाले ब्लड डोनर्स को मरीजों से मिलाएगा। इससे ब्लड डोनेशन प्रक्रिया अधिक सुव्यवस्थित और कुशल बनेगी, जो समय बचाकर जानें बचाएगी।
नीचे हम इस एप्लिकेशन को जीवंत करने के लिए आवश्यक हर चीज के बारे में विस्तार से जानेंगे, साथ ही उन घटकों पर प्रकाश डालेंगे जिनकी आपको आवश्यकता होगी। शुरुआत से अंत तक, हम सब कुछ छोटे-छोटे चरणों में तोड़ेंगे ताकि इस एप्लिकेशन को बनाना यथासंभव आसान हो जाए।
शुरू करने के लिए तैयार हैं? ठीक है, सीधे अंदर गोता लगाते हैं।
2. आपको क्या चाहिए?
RedisJSON: ECMA-404, JSON डेटा इंटरचेंज मानक को नेटिव डेटा टाइप के रूप में लागू करता है।
RediSearch: Redis के लिए उन्नत क्वेरीइंग, सेकेंडरी इंडेक्सिंग और फुल-टेक्स्ट खोज प्रदान करता है।
Redis Pub/Sub: इवेंट मैसेजिंग के लिए उपयोग किया जाता है और एक चैनल पर किसी भी संख्या में सब्सक्राइबर्स को संदेश प्रदान कर सकता है।
Telerik: वेब, मोबाइल, डेस्कटॉप एप्लिकेशन डेवलपमेंट और बहुत कुछ के लिए सॉफ्टवेयर टूल्स की एक श्रृंखला प्रदान करता है।
Blazor: एक मुफ्त ओपन-सोर्स वेब फ्रेमवर्क के रूप में उपयोग किया जाता है जो डेवलपर्स को C# और HTML का उपयोग करके वेब ऐप्स बनाने की अनुमति देता है।
.NET Core Runtime - इंटरनेट से जुड़े ऐप्स के लिए बुनियादी सेवाएं प्रदान करता है
3. आर्किटेक्चर
4. शुरुआत करना
पूर्वापेक्षाएँ
- .NET Core – v5.0.x (नवीनतम पैच संस्करण)
- Visual Studio 2019 16.9 या Visual Studio Code 1.55
- Docker – v19.03.13 (वैकल्पिक)
- Auth0:
- Domain
- Client ID
- Client Secret
- SMTP (वैकल्पिक): यह एक वैकल्पिक फीचर है। SMTP के कई प्रदाता हैं। हम आवश्यकता और मूल्य निर्धारण के आधार पर किसी एक का उपयोग कर सकते हैं। नीचे कुछ हैं:
- Twilio द्वारा SendGrid
- Amazon SES
- Mail Jet
- Mailgun
- SMS: SMS फीचर कोड अभी लागू नहीं किया गया है। हालांकि, इसकी योजना है। नीचे कुछ लोकप्रिय प्रदाता हैं:
- Msg91
- Twilio
Docker का उपयोग करके लोकल इंस्टॉलेशन सेट करना
पूर्वापेक्षा
- Docker
- Docker Compose
चरण 1. रेपो क्लोन करें:
git clone https://github.com/redis-developer/rediszindagi
.envफ़ाइल को Auth0 और SMTP विवरण के साथ अपडेट करें
चरण 2. Docker Compose फ़ाइल की जांच
उपरोक्त Compose फ़ाइल दो बुनियादी सेवाओं को परिभाषित करती है:
- Redismod
- rediszindagi
Redismod में RedisJSON और RediSearch जैसे इन-बिल्ट मॉड्यूल हैं जो इस प्रोजेक्ट के लिए उपयोग किए जाते हैं। आपको कई Auth0 एनवायरनमेंट वेरिएबल्स पास करने होंगे। SMTP वैकल्पिक रहता है। पर्सिस्टेंस के लिए, Docker वॉल्यूम माउंट जोड़ा गया है और ऐप पोर्ट 80 पर एक्सपोज्ड है।
टर्मिनल/कमांड प्रॉम्प्ट से
docker-compose up -dचलाएं
एप्लिकेशन को localhost का उपयोग करके एक्सेस किया जा सकता है।
5. डेटा कैसे स्टोर किया जाता है
- अनुरोध डेटा विभिन्न कुंजियों और विभिन्न डेटा टाइप्स में स्टोर किया जाता है।
- प्रत्येक अनुरोध के लिए:
- ID: स्ट्रिंग के रूप में
Guid
- ब्लड ग्रुप, डोनेशन टाइप, प्राथमिकता, स्टेटस:
C# ENUM
- ID: स्ट्रिंग के रूप में
- प्रत्येक अनुरोध के लिए:
- Redis JSON
- यूजर प्रोफाइल कुंजी: प्रीफिक्स:
USER_PROFILE
पोस्टफिक्स: Auth0 नाम पहचानकर्ता - अनुरोध कुंजी: प्रीफिक्स:
BLOOD_REQUEST
पोस्टफिक्स: Guid स्ट्रिंग
- यूजर प्रोफाइल कुंजी: प्रीफिक्स:
- Redis Publish:
- अनुरोध: कोई भी नया ब्लड अनुरोध अनुरोध ID को टॉपिक
URN:BLOODREQUESTS:NEW
पर संदेश के रूप में प्रकाशित करेगा
- अनुरोध: कोई भी नया ब्लड अनुरोध अनुरोध ID को टॉपिक
डेटा कैसे एक्सेस किया जाता है:
- C# रिपॉजिटरी पैटर्न का उपयोग किया जाता है, प्रत्येक कॉल Connection Multiplexer का उपयोग करके एक इंस्टेंस बनाएगा
6. एप्लिकेशन का उपयोग कैसे करें
खाता बनाना या लॉग इन करना
एप्लिकेशन का पूरा लाभ पाने के लिए, ब्लड डोनर्स को एक खाता बनाना होगा। आप मेन डैशबोर्ड पर 'Register Now' पर क्लिक करके ऐसा कर सकते हैं।
ब्लड डोनेशन देना
नेविगेशन बार के शीर्ष पर ब्लड डोनेशन बटन पर क्लिक करें। आपके पास कई फ़ील्ड होंगी जिन्हें भरकर डेटाबेस को आपके ब्लड टाइप और आपके द्वारा दान की जाने वाली मात्रा के बारे में सूचित किया जाएगा।
ब्लड डोनेशन के लिए अनुरोध प्राप्त करना
एक बार खाता बनाने के बाद, आपके ब्लड डोनेशन के लिए उपयुक्त मरीजों को आपकी उपलब्धता की सूचना दी जाएगी। वे तब आपके ब्लड डोनेशन के लिए अनुरोध भेज सकेंगे। अपने अनुरोधों की पूरी सूची तक पहुंचने के लिए, नेविगेशन बार के शीर्ष पर 'Requests' टैब पर क्लिक करें। यहां आपको उन सभी अनुरोधों का पूरा अवलोकन मिलेगा जो मरीजों ने आपके डोनेशन के लिए भेजे हैं।
निष्कर्ष: Redis के माध्यम से मरीजों को ब्लड डोनर्स से जोड़कर जान बचाना
तेजी से ब्लड तक पहुंच कई मरीजों के लिए जीवन और मृत्यु का अंतर है। सही मरीजों के साथ डोनर्स का मिलान अक्सर एक समय लेने वाली प्रक्रिया होती है, जहां हर सेकंड मरीज को खतरे में डालता है। भानु का एप्लिकेशन Redis की घटकों के बीच बिजली की तेजी से डेटा भेजने की क्षमता के माध्यम से इस बाधा को दूर करने में मदद करता है।
इस तरह की दक्षता के साथ डेटा प्रसारित होने से, जिंदगी दिए गए मानदंडों के आधार पर ब्लड डोनर्स को सही मरीजों से जल्दी मिला सकती है। यह पूरी ब्लड डोनेशन प्रक्रिया को तेज करता है, जिससे डोनर्स और मरीज रियल-टाइम में एक-दूसरे के साथ बातचीत कर सकते हैं और संभावित ब्लड डोनेशन की व्यवस्था कर सकते हैं।
इस एप्लिकेशन के केंद्र में सभी पक्षों को एक साथ लाने की क्षमता है, जो प्रगति के लिए इष्टतम दिशा प्रदान करती है। इसका मतलब है अधिक डोनेशन, कम समय बर्बाद, और इसमें शामिल सभी के लिए एक पूरी तरह से निर्बाध अनुभव।
यह एप्लिकेशन कैसे काम करता है, इसकी दृश्य जानकारी के लिए, इस YouTube वीडियो को देखें। यदि आपको यह पोस्ट पसंद आई, तो Redis Launchpad को देखना सुनिश्चित करें जहां आपको अभिनव एप्लिकेशन की एक विस्तृत विविधता तक पहुंच मिलेगी जो रोजमर्रा की जिंदगी पर प्रभाव डाल रही है।
हमारे पास ऐसे ऐप्स हैं जो मैप पर बसों को रियल-टाइम में ट्रैक करते हैं। हमारे पास ऐसे ऐप्स हैं जो विकासशील देशों में अस्पतालों में सप्लाई की कमी को रोकते हैं। और आपके खोजने के लिए और भी बहुत कुछ है।
इसलिए उन्हें जरूर देखें!
ऐप किसने बनाया?
भानु कोरथिवाडा
भानु एक अनुभवी सॉफ्टवेयर इंजीनियर हैं जो वर्तमान में ADP के लिए सीनियर कंसल्टेंट के रूप में काम कर रहे हैं। यदि आप उनकी नवीनतम परियोजनाओं से अपडेट रहना चाहते हैं, तो GitHub पर उन्हें फॉलो करना सुनिश्चित करें।