Technology ब्लॉकचेन संचालित क्रिप्टोकरेंसी ने ग्रह का अधिग्रहण कर लिया है क्योंकि यह मुद्रा का सबसे सुरक्षित और विकेन्द्रीकृत रूप है जिसमें कोई बैंक मध्यस्थ के रूप में कार्य नहीं करता है। क्रिप्टोक्यूरेंसी ट्रेडिंग के लिए वर्ल्ड वाइड वेब एकमात्र संसाधन होने के साथ, वेब-आधारित क्रिप्टोक्यूरेंसी एक्सचेंज हमेशा ब्लॉकचेन परामर्श व्यवसायों के लिए बहुत अधिक डेटा का उत्पादन करते हैं। यह जानकारी सार्वजनिक रूप से सभी के लिए सुलभ है -- नियोजित निवेश के लिए धैर्यपूर्वक उपयोग किए जाने की प्रतीक्षा कर रहा है।
हालांकि, उनके व्यापार की मात्रा आधारित प्रकृति के कारण क्रिप्टोकाउंक्शंस विनिमय मूल्य अत्यधिक अस्थिर रहते हैं। जब यह क्रिप्टोकरेंसी की वैधता के बारे में सवाल उठाता है, तो वर्तमान में यह व्यवसायों के लिए अवसर भी पैदा कर रहा है:
- डेटा एग्रीगेटर,
- क्रिप्टोक्यूरेंसी एक्सचेंज विश्लेषक
- और ब्लॉकचेन परामर्श कंपनियां
उनका कार्य, शेयर बाजार में इसके प्रदर्शन की भविष्यवाणी करने के लिए क्रिप्टोकरेंसी विनिमय कीमतों को ट्रैक और जांचना है। अपने व्यवसाय को नया करने और क्रिप्टोक्यूरेंसी निवेशकों को ग्राहकों में बदलने के अपने प्रयास में, एक्सचेंज विश्लेषक अक्सर वेब अनुप्रयोगों पर भरोसा करते हैं जो स्वचालित रूप से ऐसे ट्रेडों से डेटा एकत्र करते हैं और इसे कार्रवाई योग्य रूप में संसाधित करते हैं।
CISIN को हाल ही में एक यूएस-आधारित प्रसिद्ध क्रिप्टोक्यूरेंसी कंपनी, एक तुलनीय क्रिप्टोक्यूरेंसी विनिमय दर मूल्यांकन फर्म के साथ काम करने का अवसर मिला था। हमारा सहयोग एक सेलजेएस आधारित वेब एप्लिकेशन के साथ हुआ, जो 20 विभिन्न क्रिप्टोक्यूरेंसी एक्सचेंजों से विनिमय जानकारी एकत्र करने और क्रिप्टोक्यूरेंसी उद्योग को महत्व देने के लिए श्वेतसूचीबद्ध बाजार सूचकांक बनाने में सक्षम है।
इस लेख के साथ, हम अपने उन्नत जावास्क्रिप्ट प्रोग्रामर के कारनामों को एक साथ साझा करना चाहते हैं:
- NodeJS एप्लिकेशन के साथ आने के लिए SailJS फ्रेमवर्क का उपयोग करना
- 20 विभिन्न तृतीय पक्ष सेवाओं का उपयोग करके क्रिप्टोक्यूरेंसी एक्सचेंज डेटा को एकीकृत करना
- विकास जीवनचक्र के दौरान उन्हें जिन चुनौतियों का सामना करना पड़ा
यदि आप क्रिप्टोक्यूरेंसी जानकारी एग्रीगेटर नेट प्रोग्राम बनाने की योजना बना रहे हैं, तो यह जानने के लिए पढ़ें कि एक समान प्रोग्राम प्राप्त करने के लिए विकास प्रक्रिया कैसी दिखती है।
आइए इस वेब एप्लिकेशन की आवश्यक विशेषताओं पर एक नज़र डालते हुए शुरू करें जिसे हमने विकसित किया है।
क्रिप्टोक्यूरेंसी डेटा एग्रीगेटर की मुख्य विशेषताएं
इस एप्लिकेशन की प्रमुख विशेषताओं को समझने के लिए क्रिप्टोकुरेंसी एक्सचेंज की मौलिक समझ और इससे कौन सी जानकारी उत्पन्न होती है, यह महत्वपूर्ण है।
हम क्रिप्टोक्यूरेंसी एक्सचेंज के बारे में क्या जानते हैं?
क्रिप्टोक्यूरेंसी एक्सचेंज उसी तरह से कार्य करता है जैसे बैंक या हवाई अड्डे पर हमारे फिएट मुद्रा विनिमय आउटलेट। आप अंदर जाते हैं और अपने मूल धन का किसी अन्य धन से आदान-प्रदान करते हैं। क्रिप्टोकरेंसी के लिए, इन एक्सचेंजों को एक वेब पोर्टल साइट पर ऑनलाइन किया जाता है, जहां आप अपनी क्रिप्टोकरेंसी को अन्य लोगों में बदल सकते हैं (उदाहरण के लिए: बिटकॉइन से एथेरियम) या इसे फिएट करेंसी में बदल सकते हैं (उदाहरण के लिए: बिटकॉइन से यूएसडी)।
कई क्रिप्टोक्यूरेंसी एक्सचेंज हैं जो दुनिया भर के नेट पर पाए जा सकते हैं, कुछ प्रमुख एक्सचेंजों में GDAX, Bittrex, CoinEgg और, Binance शामिल हैं।
साधारण तथ्य यह है कि प्रत्येक क्रिप्टोकुरेंसी बाजार की अपनी विनिमय दर होती है, क्रिप्टोकुरेंसी डीलरों के लिए पैसे के उद्योग संकेतक को कम करना आसान नहीं होता है या जिस एक्सचेंज पर वह सर्वोत्तम दर प्राप्त कर सकता है।
यह वह जगह है जहां Totalcryptos इंटरनेट एप्लिकेशन 20 अलग-अलग क्रिप्टोकुरेंसी एक्सचेंजों में एक्सचेंज जानकारी प्राप्त करके और क्रिप्टोकुरेंसी मार्केट इंडेक्स उत्पन्न करके व्यापारियों की सहायता करता है।
मुद्रा विनिमय डेटा पुनर्प्राप्त करने की विधि
किसी तीसरे पक्ष की आपूर्ति से कानूनी रूप से जानकारी लाने का सबसे विश्वसनीय तरीका उनके एपीआई का उपयोग करना है। मुद्रा विनिमय होने के कारण, एपीआई आमतौर पर उपलब्ध होते हैं क्योंकि वे न केवल मुद्रा विनिमय दर के बारे में डेटा प्रदान करते हैं बल्कि अपने एपीआई के माध्यम से एक्सचेंज करने की क्षमता भी प्रदान करते हैं।
हमारे उपयोग के मामले में, हमें केवल क्रिप्टोकरेंसी की वास्तविक समय और ऐतिहासिक विनिमय दर की जानकारी की आवश्यकता है।
जैसा कि मुद्रा विनिमय डेटा हर कुछ मिनटों के बाद वास्तविक समय में अपग्रेड होता है, हमने पाया कि एक कस्टम CRON जॉब ने हर कुछ मिनटों के बाद API से डेटा PULL याचिका को ट्रिगर करने का काम किया।
विज़ुअलाइज़ेशन का उपयोग करके रॉ एक्सचेंज डेटा की श्वेतसूची
तब एकत्रित डेटा का उपयोग प्रति पैसे औसत विनिमय जानकारी की गणना करके हमारे अपने डेटा सेट बनाने के लिए किया जाता है। प्राप्त किए गए डेटा का मूल्यांकन और मूल्यांकन सारणीबद्ध और चार्ट प्रकार में किया जाता है:
i) डेटा को सारणीबद्ध रूप में प्रदर्शित करना
क्रिप्टोक्यूरेंसी के लिए यूएसडी बाजार में शीर्ष अभिनेताओं पर आधारित उच्च क्रिप्टोकरेंसी की एक सूची प्रदर्शित करना, क्रिप्टोक्यूरेंसी के लिए क्रिप्टोक्यूरेंसी बाजार में अग्रणी कलाकार और अंततः सभी क्रिप्टोकरेंसी की पूरी सूची।
अगले स्क्रीनशॉट से आपको दिखाई देने वाले सभी अलग-अलग कॉलम डेटा एक्सचेंज सप्लायर के एपीआई से प्राप्त होते हैं, सिवाय चार्ट्स के।
ii) चार्ट के साथ डेटा प्रदर्शित करना
हमने अलग-अलग क्रिप्टोक्यूरेंसी कार्यक्षमता का प्रतिनिधित्व करने के लिए दो अलग-अलग ग्राफ़ लाइब्रेरी: C3 चार्ट और स्पार्कलाइन ग्राफ़ को भी शामिल किया है।
C3 चार्ट्स का उपयोग क्रिप्टोकुरेंसी के लिए विनिमय दर के खरीद मूल्य में उतार-चढ़ाव को प्रदर्शित करने के लिए किया गया था।
स्पार्कलाइन ग्राफ़ का उपयोग TC100 इंडेक्स (मार्केट कैप द्वारा शीर्ष 100 क्रिप्टो मुद्राओं की लागत) को दिखाने के लिए किया गया था और जिस तरह से यह पूरे दोपहर में भिन्न था।
एक कस्टम रेस्ट एपीआई विकसित करना
अंततः, उत्पन्न सभी श्वेतसूची वाले बाजार संकेतक कस्टम निर्मित आरईएसटी एपीआई के माध्यम से जेएसओएन सूचना फ़ीड के रूप में भी पहुंच योग्य होंगे। टोटल क्रिप्टोस रेस्ट एपीआई उनके डेटाबेस के भीतर जानकारी तक पहुंच प्रदान करता है क्योंकि एक JSON फीड ऐसा है कि कोई भी टोटल क्रिप्टो डेटा का उपयोग करके किसी भी इंटरनेट डेवलपमेंट प्लेटफॉर्म के साथ एक समान प्लेटफॉर्म को फिर से बना सकता है।
अब जब हमारे पास सभी सुविधाओं का एक संक्षिप्त दृष्टिकोण है, तो आइए उस तकनीकी स्टैक को देखें जिसका उपयोग किया गया है।
प्रौद्योगिकी स्टैक: एक क्रिप्टोक्यूरेंसी डेटा एग्रीगेटर
डेटा एग्रीगेटर प्रोग्राम SailJS (एक MVC आधारित NodeJS फ्रेम) का उपयोग करके बनाया गया था। फ्रंट-एंड टेम्प्लेट बूटस्ट्रैप में बनाया गया था और ईजेएस (एम्बेडेड जावास्क्रिप्ट) टेम्प्लेट इंजन का उपयोग करके सेल व्यू में स्थापित किया गया था।
डेटाबेस खत्म होने पर, CRUD संचालन को MySQL का उपयोग करके नियंत्रित किया गया था।
सेलजेएस: नोडजेएस फ्रेमवर्क
सेलजेएस उन बहुत कम नोडजेएस ढांचे में से एक है जो एमवीसी विकास संस्करण को नियोजित करता है। इसने हमें यूजर इंटरफेस कोड से अलग प्रोग्राम लॉजिक को बनाए रखने और उनके बीच के कनेक्शन को एक अलग लेयर में प्रबंधित करने की अनुमति दी।
सेलजेएस के साथ-साथ वाटरलाइन ओआरएम के माध्यम से स्टोरेज लेयर को स्विच करने की क्षमता प्रदान करता है जिसके साथ हम मैसकल और डेटाबेस प्रश्नों के उत्पादन और अनुकूलन के शक्तिशाली तरीकों का उपयोग कर सकते हैं।
SailJS का उपयोग करने का एकमात्र वास्तविक कारण यह था कि इसमें एप्लिकेशन की कार्यक्षमता पर कोनों को नहीं काटते हुए विकास और स्थापना वर्कफ़्लो का समन्वय किया गया था।
ईजेएस: एम्बेडेड जावास्क्रिप्ट टेम्पलेट्स
इस तथ्य के अलावा कि EJS आपका आधिकारिक टेम्प्लेट इंजन है, जो SailsJS द्वारा समर्थित है, हमने इसका उपयोग अपने स्वयं के HTML द्वारा स्थापित सिंटैक्स के कारण किया है। भले ही हमारे पास एंगुलर या जेड जैसे विभिन्न उन्नत यूआई फ्रेमवर्क का उपयोग करने का विकल्प था, ईजेएस सेलजेएस में फ्रंट-एंड टेम्प्लेटिंग के लिए सबसे उपयुक्त शब्दावली है।
हम बैकएंड उन्नति को किकस्टार्ट करने के लिए शेल्फ बूटस्ट्रैप टेम्पलेट का उपयोग कर सकते हैं और कुछ ही समय में डेटा को दृष्टिकोण में दिखाने के लिए नियंत्रक कोड लिख रहे हैं।
चुनौतियों का सामना करना पड़ा:
विनिमय सूचना की एकरूपता का संरक्षण
पूरे क्रिप्टो एप्लिकेशन को 20 अलग-अलग क्रिप्टोकुरेंसी एक्सचेंज प्रदाताओं में स्वैप डेटा लाने के लिए प्रोग्राम किया गया है। विभिन्न स्रोतों से एक एप्लिकेशन में जानकारी लाने में समस्या यह है कि प्रत्येक डेटा एक्सचेंज वेब समर्थन की अपनी शब्दावली, डेटा फ़ीड संरचना और कॉलिंग प्रकृति होती है।
यह कच्ची जानकारी को गैर-सजातीय और अनुपयोगी बनाता है क्योंकि हमारे सामने के दृष्टिकोण केवल एक रैखिक रूप से जानकारी स्वीकार कर सकते हैं। इस वजह से, जानकारी प्राप्त करना और उसे डेटाबेस में सहेजना आसान काम नहीं है।
हमारा समाधान:
इस चुनौती को दूर करने के लिए, हमने अपनी खुद की सरणी बनाने के साथ शुरुआत की जो सभी एक्सचेंजों के डेटा को संभालेगी। हमने अपनी खुद की एक संरचना को परिभाषित किया है जो साइट पर विभिन्न विचारों द्वारा नियोजित होगी।
फिर हमारी व्यवस्था के आधार पर सरणी के अंदर प्राप्त क्रिप्टोक्यूरेंसी जानकारी को संरक्षित करने के लिए, हमने कई स्विच इंस्टेंस बनाए, प्रत्येक मामला कच्चे डेटा को हमारे सरणी की संरचना में बदलने के लिए फ़ोरैच लूप का उपयोग करके संचालित होता है।
Foreach लूप विशेष एक्सचेंज इंटरनेट सेवा द्वारा आपूर्ति किए गए प्रत्येक चर के लिए रूपांतरण को संसाधित करता है और स्विच केस के अंत में, हमने एक्सचेंज जानकारी का एक कस्टम सरणी बनाया है जो रैखिक और सजातीय है।
डेटा लोडिंग समय का अनुकूलन
लोडिंग समय को नियंत्रण में रखना लगभग किसी भी इंटरनेट एप्लिकेशन के लिए हमेशा उच्च प्राथमिकता में से एक है जिसे हम विकसित करते हैं क्योंकि यह सीधे किसी प्रोग्राम की प्रभावकारिता को प्रभावित करता है। TotalCrypto जैसे डेटा-भारी वेब प्रोग्राम के लिए, लोडिंग समय एक प्रत्याशित चिंता का विषय था क्योंकि वेबसाइट लगभग 20 अलग-अलग साइटों के डेटा को संभाल रही है।
पारंपरिक तरीके से पूरी एक्सचेंज जानकारी को पेज लोड पर लोड करना जानकारी लोड करने का आदर्श तरीका नहीं था और हमने इसका अनुभव भी किया। पेज लोडिंग पर लोड होने वाले डेटा की संख्या के कारण वेब ऐप ने तुरंत उच्च लोडिंग समय का खुलासा किया।
हमारा समाधान:
AJAX के साथ अतुल्यकालिक सूचना लोडिंग तंत्र का उपयोग करके मरम्मत को तैनात किया गया था। इस तरह, हर बार जब पेज लोड किया गया था, पेज लोड होने के दौरान डेटाबेस में एक एसिंक्रोनस कॉल किया गया था और एचटीएमएल/सीएसएस घटकों को छोड़ा जा रहा था।
इसलिए, उस समय पेज लोडिंग पूरी हो चुकी थी, जानकारी लगभग लोड हो चुकी थी और डेटा को पूरी तरह से लोड करने में केवल कुछ और सेकंड लगे।
यह वेब एप्लिकेशन की सामग्री को लोड करने के लिए एक समय दिशा दृष्टिकोण की तरह था जिसके परिणामस्वरूप प्रोग्राम के लिए तुरंत एक अनुकूलित लोडिंग दर हो गई
निष्कर्ष
सार्वजनिक रूप से विकसित एपीआई का उपयोग करते हुए हमने एक वर्डप्रेस प्लगइन के विकास के प्रयासों को भी बढ़ाया है जो सभी क्रिप्टोकुरेंसी एक्सचेंज डेटा और वर्डप्रेस विजेट जैसे अद्वितीय बाजार संकेतक प्रदान करता है। SailsJS में विकसित पूरे कार्यक्रम के साथ जहां दृश्य तत्व मूल तर्क से अलग होते हैं, तो वह Node.JS प्रोग्राम उतना ही अनुकूल होता है जितना इसे प्राप्त होता है।
निकट भविष्य में Totalcryptos के लिए विकास भागीदारों के रूप में काम करने वाले व्यक्तियों के लिए कुछ रोमांचक विकास के अवसर हैं। नवीनतम विकास के बारे में अधिक जानकारी के लिए हमारी वेबसाइट पर बने रहें।
तब तक, इस पोस्ट से संबंधित अपनी पूछताछ के लिए हमसे संपर्क करें या यदि आप अपना वेब एप्लिकेशन बनाने और स्थापित करने के लिए किसी वेब डेवलपर को नियुक्त करना चाहते हैं। आदियोस!