paint-brush
ओपन सोर्स और जावास्क्रिप्ट की शक्ति: ग्लोबलपिंग की यात्राद्वारा@globalping
132 रीडिंग

ओपन सोर्स और जावास्क्रिप्ट की शक्ति: ग्लोबलपिंग की यात्रा

द्वारा Globalping7m2023/10/05
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

इस ब्लॉग पोस्ट में, मैं स्टार्टअप के साथ अपने अनुभवों से अंतर्दृष्टि और सीख साझा करूंगा और वे ग्लोबलपिंग में हमारे दृष्टिकोण को कैसे प्रभावित करते हैं। विशेष रूप से, मैं इस बारे में लिखूंगा कि हमने जावास्क्रिप्ट-आधारित ओपन-सोर्स प्लेटफॉर्म क्यों बनाया और इन विकल्पों ने परियोजना को कैसे बदल दिया है।
featured image - ओपन सोर्स और जावास्क्रिप्ट की शक्ति: ग्लोबलपिंग की यात्रा
Globalping HackerNoon profile picture

कोई नया उत्पाद बनाते समय, आपको अचानक अनगिनत चुनौतियों और निर्णयों का सामना करना पड़ता है। अफसोस की बात है कि सही विकल्प चुनने का कोई जादुई फार्मूला नहीं है, चाहे आप अभी शुरुआत कर रहे हों या एक अनुभवी उद्यमी हों। एक टीम के रूप में कई बार इस रास्ते पर चलने के बाद, हम उस उत्साह और चिंता को समझते हैं जो यह ला सकता है।


हम एक छोटी सी टीम हैं जिसने हाल ही में एक वैश्विक नेटवर्क परीक्षण प्लेटफॉर्म ग्लोबलपिंग लॉन्च किया है। यह परियोजना विशेष है क्योंकि समान उत्पाद विचार वाले स्टार्टअप के वांछित परिणाम तक नहीं पहुंचने के बाद यह हमारा दूसरा प्रयास है। ग्लोबलपिंग के साथ, हम उत्पाद के लिए अपने लक्ष्यों और दृष्टिकोण तक पहुंचने के लिए एक अलग दृष्टिकोण अपना रहे हैं।


इस ब्लॉग पोस्ट में, मैं स्टार्टअप के साथ अपने अनुभवों से अंतर्दृष्टि और सीख साझा करूंगा और वे ग्लोबलपिंग में हमारे दृष्टिकोण को कैसे प्रभावित करते हैं। विशेष रूप से, मैं इस बारे में लिखूंगा कि हमने जावास्क्रिप्ट-आधारित ओपन-सोर्स प्लेटफ़ॉर्म क्यों बनाया और इन विकल्पों ने परियोजना को कैसे बदल दिया है।

चिंतन करें और सीखें: पिछले अनुभवों से आगे बढ़ना

आइए कुछ साल पहले चलते हैं जब हमने PerfOps नामक स्टार्टअप की स्थापना की थी। इंटरनेट-आधारित अनुप्रयोगों को अनुकूलित करने के लिए B2B SaaS प्लेटफ़ॉर्म बनाने का विचार था। इसने सीडीएन प्रदाताओं पर प्रदर्शन मेट्रिक्स इकट्ठा करने और मल्टी-सीडीएन लोड-बैलेंसिंग कार्यक्षमता को सक्षम करने के लिए आरयूएम (रियल यूजर मॉनिटरिंग) डेटा का उपयोग किया।


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


कई स्टार्टअप्स की तरह, हमें भी फंडिंग की जरूरत थी। भाग्य हमारे साथ था क्योंकि हमें वीसी का समर्थन प्राप्त हुआ, जिससे हमें एक टीम बनाने और ऑन-डिमांड नेटवर्क परीक्षण के लिए एक वैश्विक नेटवर्क बनाने के लिए सैकड़ों वीएम (वर्चुअल मशीन) किराए पर लेने की अनुमति मिली। परिणामस्वरूप, हम अरबों आरयूएम डेटा बिंदुओं का विश्लेषण करने और वास्तविक समय में डीएनएस-आधारित लोड-संतुलन में उनका उपयोग करने के लिए नई तकनीक विकसित कर सकते हैं।


हालाँकि यह उद्यम कल्पना के अनुरूप काम नहीं कर सका, लेकिन प्राप्त अनुभव अमूल्य था और आज ग्लोबलपिंग के मार्ग को आकार देता है।


कुछ निष्कर्ष:

  • दबाव ने जुनून को कम कर दिया : वीसी निवेश ने हमें अपने काम की गति और प्राथमिकताओं को बदलने का आग्रह किया। जैसे ही हमने फंडिंग के अगले दौर को सुरक्षित करने के लिए मेट्रिक्स को पूरा करने पर ध्यान केंद्रित किया और अपनी प्राथमिकताओं को छोटे व्यवसायों और एकल उपयोगकर्ताओं से बड़े उद्यमों में स्थानांतरित कर दिया, हमने महसूस किया कि हमारे विचार के लिए खुशी और उत्साह फीका पड़ गया।


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


  • RUM डेटा अविश्वसनीय है . बड़ी मात्रा में उपयोगी होते हुए भी, यह जल्दी ही स्पष्ट हो गया कि अधिकांश वास्तविक उपयोगकर्ता मॉनिटरिंग (आरयूएम) डेटा समस्याग्रस्त थे और नेटवर्किंग समस्याओं को डीबग करने के लिए आदर्श नहीं थे। आप कभी नहीं जान सकते कि समस्या सीडीएन में है या परीक्षण चलाने वाले क्लाइंट में। साथ ही, RUM डेटा प्रतिलिपि प्रस्तुत करने योग्य नहीं है; एक बार परीक्षण चलने के बाद, आपके परिवर्तनों के प्रभाव का आकलन करने के लिए इसे उसी स्थान से दोबारा चलाने का कोई तरीका नहीं है।


  • ब्लैक बॉक्स मदद नहीं करते . वीसी-समर्थित कंपनी के रूप में, हमें सभी कोड और डेटा को गुप्त रखना था और जनता से छिपाकर रखना था। हमारे उपयोगकर्ता उन्हें दिखाए गए डेटा की प्रामाणिकता और सटीकता को कभी भी सत्यापित नहीं कर सके। इसके अलावा, कोई भी यह दावा कर सकता है कि हमने विपरीत साबित करने में सक्षम हुए बिना उच्च-भुगतान वाले ग्राहकों के पक्ष में प्रदर्शन रैंकिंग को मैन्युअल रूप से बदल दिया है।


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

ओपन-सोर्स को अपनाना और उपयोगकर्ताओं को पहले रखना

हमारा मानना है कि ग्लोबलपिंग को एक ओपन-सोर्स प्रोजेक्ट बनाना एक स्वाभाविक प्रगति थी। एक बार के लिए, हम पहले से ही इस अवधारणा से परिचित हैं। हम लगभग 10 वर्षों से jsDelivr चला रहे हैं, एक निःशुल्क, ओपन-सोर्स, मल्टी-सीडीएन सेवा जो 230 बिलियन से अधिक मासिक अनुरोधों को पूरा करती है।


इसलिए हम पहले से ही ओपन सोर्स के फायदे और नुकसान जानते थे, क्या करना है और क्या नहीं करना है - जितना अधिक हमने इसके बारे में सोचा, उतना ही यह समझ में आया कि ग्लोबलपिंग को ओपन सोर्स होना चाहिए।


ग्लोबलपिंग को खुला स्रोत बनाने के मुख्य कारण थे:

  • समुदाय का लाभ उठाना : परियोजना में योगदान देने वाले अधिकांश लोग इसका उपयोग भी करते हैं। इसलिए वे अपने कौशल का योगदान करके या केवल प्रतिक्रिया देकर अपना स्वयं का टूल बनाने और वांछित सुविधाएँ प्राप्त करने में मदद करते हैं। इसके अलावा, ग्लोबलपिंग अपने समुदाय के साथ बढ़ती है क्योंकि परीक्षण नेटवर्क बनाने के लिए वीएम को किराए पर लेने के बजाय, हम अपने घरों और कार्यालयों में ग्लोबलपिंग जांच की मेजबानी करने के लिए समुदाय पर भरोसा करते हैं।


  • jsDelivr का उपयोग : किसी समुदाय का निर्माण रातोरात नहीं होता है। सौभाग्य से, हमारे पास पहले से ही हमारे अन्य प्रोजेक्ट, jsDelivr का समर्थन करने वाला एक बड़ा समुदाय है। कई मौजूदा उपयोगकर्ता और समर्थक तकनीकी ओवरलैप के कारण ग्लोबलपिंग में शामिल हो सकते हैं: jsDelivr विश्व स्तर पर वितरित बुनियादी ढांचा प्रदान करता है, और ग्लोबलपिंग ऐसी वैश्विक प्रणालियों की निगरानी, परीक्षण, डिबग और तुलना करने का एक तरीका है।


  • सभी के लिए निर्माण : विकास और लाभ का दबाव कम होने के साथ, अब हम एक ऐसा मंच बनाने पर ध्यान केंद्रित कर सकते हैं जो सभी के लिए सुलभ हो। प्लेटफ़ॉर्म मुफ़्त है, उदार सीमाओं के साथ, सभी को समान सुविधाएँ प्रदान करता है, चाहे वे एक बड़ा उद्यम हों या इंटरनेट कैसे काम करता है यह सीख रहे छात्र हों।


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


स्वाभाविक रूप से, खुले स्रोत की भी अपनी चुनौतियाँ हैं। उत्पाद विकास के लिए डेवलपर्स, डिज़ाइनरों, विपणक और डेवलपर संबंध विशेषज्ञों की आवश्यकता होती है। और जबकि हमें अपने समुदाय के तकनीकी विशेषज्ञों का समर्थन प्राप्त है, फिर भी हम एक कोर टीम के साथ काम करते हैं जिसे उनके काम के लिए मुआवजा दिया जाता है।


वीसी फंडिंग पर निर्भर रहने के बजाय, अब हम समान विचारधारा वाली कंपनियों के साथ साझेदारी बना रहे हैं और GitHub प्रायोजकों से समर्थन मांग रहे हैं, जिनके दान से हम आगे बढ़ते हैं।

ग्लोबलपिंग विकसित करने के लिए जावास्क्रिप्ट का चयन करना

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


भाषा के साथ हमारी परिचितता का लाभ पहले ही मिल चुका है, जिससे हमें तेजी से नई सुविधाएं बनाने और कम परिचित भाषाओं की तुलना में बग को अधिक आसानी से ढूंढने और ठीक करने की अनुमति मिली है।


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


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


परिणामस्वरूप, डेवलपर्स तेजी से योगदान कर सकते हैं, जिससे प्रेरणा बनी रहती है और परियोजना आगे बढ़ती है।


अंततः, जबकि हमारी कोर टीम ग्लोबलपिंग पर लगातार काम करती है, हम मंच पर किसी भी योगदान का स्वागत करते हैं । जावास्क्रिप्ट को चुनकर, हम एक खुला और सहयोगी वातावरण बनाए रख सकते हैं जो ग्लोबलपिंग को एक सहायक और उपयोगकर्ता के अनुकूल नेटवर्क परीक्षण मंच बनाने में रुचि रखने वाले किसी भी व्यक्ति को आमंत्रित करता है।

स्वयं या अपनी टीम में ग्लोबलिंग का उपयोग करना

अंत में, हम आपको संक्षेप में ग्लोबलपिंग प्लेटफ़ॉर्म से परिचित कराना चाहेंगे और आशा करते हैं कि आपकी टीमों में समस्या निवारण और नेटवर्क परीक्षण को बेहतर बनाने के लिए इसे आज़माने की आपकी जिज्ञासा जगेगी!


माप परिणामों तक त्वरित पहुंच प्राप्त करें: हमने विभिन्न उपयोगकर्ताओं की आवश्यकताओं को पूरा करने के लिए विभिन्न प्रकार के एकीकरण विकसित किए हैं, चाहे वे नेटवर्क विशेषज्ञ हों या नए। यदि आप अपने टर्मिनल में सबसे अधिक आरामदायक हैं, तो हमारे सीएलआई टूल का उपयोग करें। हमारे GitHub बॉट और स्लैक ऐप नेटवर्क मुद्दों पर एक साथ काम करने वाली टीमों के लिए बहुत मददगार हैं।


अंत में, उदाहरण के लिए, जब आपके पास अपने सामान्य सेटअप तक पहुंच नहीं होती है, तो परीक्षण चलाने के लिए आप हमारी वेबसाइट पर एक सरल और उपयोगकर्ता-अनुकूल ग्राफ़िकल इंटरफ़ेस में ग्लोबलपिंग का भी उपयोग कर सकते हैं।


सभी एकीकरणों में लगातार कमांड लिखें: चूंकि हम नहीं चाहते कि हर बार जब आप एकीकरण बदलते हैं तो आप सब कुछ नए सिरे से सीखें, इसलिए हमने एक समान कमांड संरचना लागू की है। सामान्य तौर पर, सभी ग्लोबलपिंग कमांड एक ही प्रारूप का पालन करते हैं:

 globalping [command type] [target] from [location] [flags]


इसलिए, उदाहरण के लिए, दो जांच (सीमा ध्वज के साथ परिभाषित) का उपयोग करके वियना और बर्लिन से jsdelivr.com पर पिंग चलाने के लिए, आप निम्नलिखित कमांड लिखते हैं:

 globalping ping jsdelivr.com from "Vienna, Berlin" --limit 2


और परिणाम इस प्रकार दिख सकता है:

ग्लोबलपिंग का उपयोग करके दुनिया में कहीं से भी पिंग करें


हमारे एपीआई के साथ अपने स्वयं के टूल बनाएं: क्या आप ग्लोबलपिंग प्लेटफ़ॉर्म का उपयोग करके अपना स्वयं का टूल बनाना चाहते हैं? कोई समस्या नहीं - आप जो चाहें बनाने के लिए हमारे REST API (उदार सीमा के साथ) का उपयोग कर सकते हैं!


नेटवर्क का हिस्सा बनें: ग्लोबलपिंग हमारे समुदाय द्वारा संचालित जांच के विश्व स्तर पर वितरित नेटवर्क पर निर्भर करता है। हमें ऐसे किसी भी व्यक्ति का स्वागत करते हुए खुशी हो रही है जो सभी उपयोगकर्ताओं को मुफ्त में विश्वसनीय परिणाम देने में मदद करने के लिए अपने घर, कार्यालय या सर्वर पर डॉकर में जांच स्थापित करता है

आगे की ओर देखें: एक साथ मिलकर वैश्विक विकास का निर्माण करें

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


हम सुविधाओं को परिष्कृत करना और बेहतरीन उपयोगकर्ता अनुभव प्रदान करना जारी रखेंगे ताकि रुचि रखने वाला कोई भी व्यक्ति प्लेटफ़ॉर्म का उपयोग कर सके।