• FediMeteo एक वैश्विक मौसम सूचना सेवा है, जिसकी शुरुआत 4 यूरो के FreeBSD VPS से हुई, और यह Fediverse के ज़रिए हर शहर का मौसम अपने-आप पोस्ट करती है
  • हर देश को FreeBSD jail के ज़रिए अलग करके मैनेज किया जाता है, और snac सॉफ़्टवेयर व Open-Meteo API की मदद से डेटा लाकर Markdown फ़ॉर्मैट में पोस्ट किया जाता है
  • सिस्टम हर 6 घंटे में अपने-आप अपडेट होता है, 39 jail, 38 देशों के 2937 शहरों को सपोर्ट करता है, और फॉलोअर संख्या 7700 से अधिक तक बढ़ चुकी है
  • API key लीक, coordinates calculation error, language translation issues जैसी कई ऑपरेशनल समस्याएँ आईं, लेकिन caching और बहुभाषी सपोर्ट में सुधार से सिस्टम स्थिर हुआ
  • इसे इस बात के उदाहरण के रूप में देखा जाता है कि कम-लागत वाले इंफ्रास्ट्रक्चर पर भी कुशल और स्वायत्त वैश्विक सेवा बनाई जा सकती है

प्रोजेक्ट अवलोकन

  • FediMeteo एक Fediverse-आधारित ऑटोमेटेड मौसम अलर्ट सेवा है, जिसकी शुरुआत व्यक्तिगत रुचि से हुई
    • निर्माता ने यह सोचकर शुरुआत की कि वह अपनी टाइमलाइन में अपने शहर का मौसम सीधे देखना चाहता था
    • सेवा शहर-वार अकाउंट (bot) बनाती है और हर शहर का मौसम नियमित रूप से पोस्ट करती है
  • ऑपरेटिंग सिस्टम के रूप में FreeBSD चुना गया, और हर देश के लिए अलग jail रखकर मैनेजमेंट और सुरक्षा सुनिश्चित की गई
  • शुरुआती टेस्ट जर्मनी के VPS पर किए गए थे, और अब यह इटली के मिलान में 4 यूरो वाले VPS पर चल रही है

डिज़ाइन सिद्धांत

  • देश-वार instance separation के ज़रिए मैनेजमेंट और सुरक्षा को मज़बूत करना, और ज़रूरत पड़ने पर अलग-अलग माइग्रेट करने की सुविधा
  • डेटा स्रोत के रूप में wttr.in और Open-Meteo में से चयन, जिसमें open source अनुकूलता और विश्वसनीयता को महत्व दिया गया
  • accessibility enhancement: स्थानीय भाषा, text browser compatibility, emoji का उपयोग, JavaScript पर निर्भरता नहीं
  • Unix philosophy के अनुसार छोटे-छोटे components के सहयोग से बना ढांचा बनाए रखना
  • snac को मुख्य सॉफ़्टवेयर के रूप में अपनाया गया, जिसमें ActivityPub support, RSS generation, कम resource usage, और तेज़ compilation speed है

तकनीकी कार्यान्वयन

  • हर jail स्वतंत्र रूप से काम करता है, और Python script शहर-वार डेटा लाकर उसे Markdown में बदलती है
    • geopy से coordinates निकालने के बाद Open-Meteo API call की जाती है
    • snac के note कमांड से पोस्ट भेजी जाती है, और external API key management की ज़रूरत नहीं पड़ती
  • post.sh script सभी शहरों पर क्रम से चलकर पोस्ट अपने-आप बनाती और प्रकाशित करती है
    • cron इसे हर 6 घंटे में चलाता है, और Uptime-Kuma से स्थिति मॉनिटर की जाती है
  • शहरों के नाम फ़ाइल (cities.txt) में मैनेज किए जाते हैं, और नया शहर जोड़ने पर वह अपने-आप लागू हो जाता है

वृद्धि और प्रतिक्रिया

  • शुरुआत में इटली-केंद्रित परीक्षण के बाद इसे यूरोप के अलग-अलग देशों तक बढ़ाया गया
  • FediFollows द्वारा प्रोजेक्ट का परिचय दिए जाने के बाद फॉलोअर्स तेज़ी से बढ़े, और अलग-अलग देशों के उपयोगकर्ताओं के अनुरोध भी बढ़े
  • बहुभाषी समर्थन, emoji अभिव्यक्ति, और unlisted post फीचर जोड़े गए
  • डेवलपर कम्युनिटी से मिले तेज़ फीडबैक के आधार पर फीचर्स में लगातार सुधार होता रहा

विस्तार और तकनीकी चुनौतियाँ

  • वैश्विक विस्तार के दौरान unit conversion (Celsius/Fahrenheit), time zone differences, और एक ही नाम वाले शहरों में भेद जैसी समस्याएँ सामने आईं
  • अमेरिका और कनाडा में विस्तार के समय 1200 से अधिक शहर जोड़े गए, और राज्य-आधारित पहचान के लिए __ delimiter इस्तेमाल किया गया
  • Open-Meteo के free API limit पार होने के बाद dedicated API key उपलब्ध कराई गई
  • FreeBSD और snac की दक्षता की वजह से एक ही VPS पर कई देशों को चलाना संभव हुआ

सिस्टम प्रदर्शन और इंफ्रास्ट्रक्चर

  • VPS स्पेसिफिकेशन: FreeBSD 14.3-RELEASE, और jail मैनेजमेंट के लिए BastilleBSD
    • कुल 39 jail, हर 15 मिनट में ZFS snapshot, और हर घंटे external backup किया जाता है
    • RAM उपयोग 501MB, और अपडेट के समय इसमें थोड़ी बढ़ोतरी होती है
  • CPU load औसतन 10% से कम रहता है, जबकि बड़े अपडेट के दौरान यह 70~75% तक पहुँच जाता है
  • अमेरिका instance में शहरों के बीच 5 सेकंड के अंतर से पोस्ट किया जाता है, और पूरी प्रोसेस में लगभग 2 घंटे 30 मिनट लगते हैं

समस्या समाधान के उदाहरण

  • API key leak: debug code की वजह से key उजागर हुई, जिसे तुरंत ठीक किया गया और नई key जारी हुई
  • geopy error: Nominatim response failure की स्थिति में coordinates caching लागू कर समस्या हल की गई
  • भाषा समस्याएँ: बहुभाषी अनुवाद छूटना और स्थानीय भाषा चयन की गलतियाँ ठीक की गईं

वर्तमान स्थिति (दिसंबर 2025 के अनुसार)

  • समर्थित देश: 38 देश, शहरों की संख्या 2937
  • Fediverse पर 7707 से अधिक फॉलोअर्स, जबकि RSS subscribers की संख्या का अनुमान नहीं है
  • यूरोप, उत्तर अमेरिका, एशिया, और ओशिआनिया के प्रमुख शहर शामिल
  • सिस्टम स्थिर रूप से चल रहा है, और अतिरिक्त देशों तक विस्तार की क्षमता मौजूद है

निष्कर्ष

  • FediMeteo ने यह साबित किया है कि कम-लागत वाले इंफ्रास्ट्रक्चर पर भी वैश्विक सेवा बनाई जा सकती है
  • यह data sovereignty, सरल संरचना, और open source collaboration के मूल्य को दिखाने वाला उदाहरण है
  • निर्माता ज़ोर देता है कि इस प्रोजेक्ट के माध्यम से मौसम लोगों को जोड़ने वाला एक सामाजिक माध्यम बन गया है

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.