निगरानी

परफ़ॉर्मेंस ऑप्टिमाइज़ेशन की शुरुआत मुख्य मेट्रिक की पहचान करने से होती है. ये मेट्रिक आम तौर पर इंतज़ार के समय और थ्रूपुट पर असर डालती हैं. इन मेट्रिक को कैप्चर और ट्रैक करने के लिए निगरानी करने से, ऐप्लिकेशन के कमज़ोर हिस्सों का पता चलता है. मेट्रिक की मदद से, परफ़ॉर्मेंस मेट्रिक को बेहतर बनाने के लिए ऑप्टिमाइज़ेशन किया जा सकता है.

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

इंतज़ार के समय की मेट्रिक की पहचान करना

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

ट्रैक करने के लिए, सुझाई गई मेट्रिक में ये शामिल हैं:

  • अनुरोध की अवधि
  • सबसिस्टम जानकारी के स्तर पर अनुरोध की अवधि (जैसे कि एपीआई कॉल)
  • नौकरी की अवधि

प्रवाह क्षमता की मीट्रिक की पहचान करना

थ्रूपुट, किसी तय समयावधि के दौरान पूरे किए गए अनुरोधों की कुल संख्या का एक माप होता है. सबसिस्टम की इंतज़ार के समय का असर, डेटा की थ्रूपुट पर हो सकता है. इसलिए, आपको इन्वेंट्री को बेहतर बनाने के लिए, इंतज़ार के समय को ऑप्टिमाइज़ करना पड़ सकता है.

यहां कुछ ऐसी मेट्रिक दी गई हैं जिन्हें ट्रैक करने का सुझाव दिया जाता है:

  • क्वेरी प्रति सेकंड
  • ट्रांसफ़र किए गए डेटा का साइज़, हर सेकंड के हिसाब से
  • हर सेकंड में I/O कार्रवाइयों की संख्या
  • संसाधनों का इस्तेमाल, जैसे कि सीपीयू या मेमोरी का इस्तेमाल
  • बैकलॉग प्रोसेस करने का साइज़, जैसे कि pub/sub या थ्रेड की संख्या

सिर्फ़ औसत नहीं

परफ़ॉर्मेंस को मापने में आम तौर पर होने वाली गलती सिर्फ़ औसत (औसत) वाले केस पर ध्यान देने की होती है. हालांकि, यह मददगार होता है, लेकिन इससे इंतज़ार के समय के डिस्ट्रिब्यूशन के बारे में अहम जानकारी नहीं मिलती. परफ़ॉर्मेंस पर्सेंटाइल ट्रैक करना बेहतर मेट्रिक है. उदाहरण के लिए, किसी मेट्रिक के लिए 50वां/75वां/90वां/99वां पर्सेंटाइल.

आम तौर पर, ऑप्टिमाइज़ेशन दो चरणों में किया जा सकता है. सबसे पहले, इंतज़ार के समय को 90वें पर्सेंटाइल के लिए ऑप्टिमाइज़ करें. इसके बाद, 99वें पर्सेंटाइल पर विचार करें. इसे टेल लेटेंसी भी कहा जाता है: यह उन अनुरोधों का एक छोटा हिस्सा होता है जिन्हें पूरा होने में ज़्यादा समय लगता है.

ज़्यादा जानकारी वाले नतीजों के लिए सर्वर साइड मॉनिटरिंग

आम तौर पर, मेट्रिक ट्रैक करने के लिए सर्वर साइड प्रोफ़ाइलिंग को प्राथमिकता दी जाती है. आम तौर पर, सर्वर साइड से इस्तेमाल करना ज़्यादा आसान होता है और इससे ज़्यादा जानकारी वाला डेटा ऐक्सेस किया जा सकता है. साथ ही, कनेक्टिविटी से जुड़ी समस्याओं की वजह से, इस पर कोई रुकावट नहीं आती.

एंड-टू-एंड विज़िबिलिटी के लिए ब्राउज़र को मॉनिटर करने की सुविधा

ब्राउज़र की प्रोफ़ाइलिंग से, असली उपयोगकर्ता के अनुभव के बारे में ज़्यादा इनसाइट मिल सकती है. यह दिखा सकता है कि किन पेजों के अनुरोध धीमे हैं. इन्हें सर्वर साइड मॉनिटरिंग से जोड़कर देखा जा सकता है, ताकि आगे का विश्लेषण किया जा सके.

Google Analytics की मदद से, पेज टाइमिंग की रिपोर्ट में पेज लोड होने के समय के लिए, आउट-ऑफ़-द-बॉक्स निगरानी की जाती है. इससे आपकी साइट पर उपयोगकर्ता अनुभव को समझने के लिए कई उपयोगी व्यू मिलते हैं, खास तौर पर:

  • पेज लोड होने में लगने वाले समय
  • रीडायरेक्ट लोड होने में लगने वाला समय
  • सर्वर से जवाब मिलने में लगने वाला समय

क्लाउड में निगरानी करना

ऐसे कई टूल हैं जिनका इस्तेमाल करके, अपने ऐप्लिकेशन की परफ़ॉर्मेंस मेट्रिक को कैप्चर किया जा सकता है और उस पर नज़र रखी जा सकती है. उदाहरण के लिए, अपने Google Cloud प्रोजेक्ट में परफ़ॉर्मेंस मेट्रिक लॉग करने के लिए, Google Cloud Logging का इस्तेमाल करें. इसके बाद, लॉग की गई मेट्रिक को मॉनिटर और सेगमेंट करने के लिए, Google Cloud मॉनिटरिंग में डैशबोर्ड सेट अप करें.

Python क्लाइंट लाइब्रेरी में, कस्टम इंटरसेप्टर की मदद से Google Cloud Logging में लॉग इन करने का उदाहरण देखने के लिए, लॉगिंग गाइड देखें. Google Cloud में उपलब्ध इस डेटा की मदद से, लॉग किए गए डेटा के ऊपर मेट्रिक बनाई जा सकती हैं. इससे Google Cloud मॉनिटर की मदद से, अपने ऐप्लिकेशन को देखा जा सकता है. Google Cloud Logging को भेजे गए लॉग का इस्तेमाल करके मेट्रिक बनाने के लिए, उपयोगकर्ता की तय की गई लॉग-आधारित मेट्रिक के लिए गाइड का पालन करें.

इसके अलावा, अपने कोड में मेट्रिक तय करने के लिए, मॉनिटरिंग क्लाइंट की लाइब्रेरी का इस्तेमाल किया जा सकता है. साथ ही, उन्हें लॉग से अलग, सीधे मॉनिटरिंग को भेजा जा सकता है.

लॉग-आधारित मेट्रिक का उदाहरण

मान लें कि अपने ऐप्लिकेशन में गड़बड़ी दर को बेहतर तरीके से समझने के लिए, is_fault वैल्यू पर नज़र रखना है. लॉग से is_fault वैल्यू को नई काउंटर मेट्रिक, ErrorCount में एक्सट्रैक्ट किया जा सकता है.

मेट्रिक कॉन्फ़िगरेशन

मेट्रिक में फ़िल्टर और लेबल

'क्लाउड लॉगिंग' में लेबल की मदद से, आपको लॉग में मौजूद अन्य डेटा के आधार पर अपनी मेट्रिक को कैटगरी में ग्रुप करने की सुविधा मिलती है. Cloud Logging को भेजे गए method फ़ील्ड के लिए एक लेबल कॉन्फ़िगर किया जा सकता है. इससे यह पता लगाया जा सकता है कि Google Ads API तरीके से गड़बड़ियों की संख्या को किस तरह बांटा गया है.

ErrorCount मेट्रिक और Method लेबल को कॉन्फ़िगर करने के बाद, 'मॉनिटरिंग डैशबोर्ड' में एक नया चार्ट बनाकर, ErrorCount को मॉनिटर किया जा सकता है. इस डेटा को Method के हिसाब से ग्रुप किया जाता है.

ErrorCount डैशबोर्ड

सूचनाएं

क्लाउड मॉनिटरिंग और दूसरे टूल में, सूचना से जुड़ी नीतियों को कॉन्फ़िगर किया जा सकता है. इन नीतियों में यह बताया जाता है कि आपकी मेट्रिक से कब और कैसे अलर्ट ट्रिगर होंगे. क्लाउड मॉनिटरिंग से जुड़ी सूचनाएं सेट अप करने से जुड़े निर्देशों के लिए, सूचनाओं से जुड़ी गाइड का पालन करें.