MySQL कॉन्फ़िगरेशन ट्यूनिंग डेटाबेस पेशेवरों और प्रशासकों द्वारा कार्यान्वित डेटाबेस प्रबंधन का एक महत्वपूर्ण घटक है। इसका लक्ष्य डेटाबेस को उसके हार्डवेयर और कार्यभार के अनुरूप कॉन्फ़िगर करना है। लेकिन डेटाबेस प्रबंधन क्षेत्र से परे, MySQL कॉन्फ़िगरेशन ट्यूनिंग की उपयोगिता को काफी हद तक नजरअंदाज कर दिया गया है।
हमारा अनुमान है कि MySQL ट्यूनिंग वेब ऐप्स के प्रदर्शन को महत्वपूर्ण रूप से प्रभावित कर सकती है। यदि हम MySQL ट्यूनिंग के मूल्य का प्रदर्शन कर सकते हैं, तो हमारा मानना है कि उद्यम और संगठन इस अभ्यास को बड़े पैमाने पर शामिल करने के इच्छुक हो सकते हैं।
ट्यूनिंग के साथ एप्लिकेशन प्रदर्शन में सुधार एक व्यापक दृष्टिकोण के साथ सबसे अच्छा हासिल किया जाता है जो निम्नलिखित क्षेत्रों को संबोधित करता है:
कई अनुभवी डेवलपर्स डेटाबेस प्रदर्शन ट्यूनिंग को अपने ऐप्स के प्रदर्शन को बेहतर बनाने के अवसर के रूप में नहीं देखते हैं क्योंकि वे इस डोमेन के बारे में बहुत कम जानते हैं। वे कोडबेस को अनुकूलित करने में बहुत समय बिताते हैं, लेकिन यह एक ऐसे बिंदु पर पहुंच जाता है जहां यह निवेश किए गए समय और ऊर्जा के लिए कोई मूल्यवान परिणाम नहीं लाता है। MySQL ट्यूनिंग कैसे लोकप्रिय ओपन-सोर्स वेब अनुप्रयोगों के प्रदर्शन को सकारात्मक रूप से प्रभावित करती है, इस पर हमारा शोध डेवलपर्स को इस तथ्य को प्रदर्शित करने के उद्देश्य से है।
लारवेल ऐमियोस के लिए हमारी परीक्षण प्रक्रिया हमें सीडेड डेटा का उपयोग करके कॉन्फ़िगरेशन से पहले और बाद में ऐप के प्रदर्शन की तुलना करने देती है। पहले डिफ़ॉल्ट कॉन्फ़िगरेशन के साथ परीक्षण चलाने से, हम ट्यून किए गए कॉन्फ़िगरेशन की तुलना करने के लिए मूल्यवान नियंत्रण परिणाम प्राप्त करते हैं।
हमने प्रत्येक एप्लिकेशन को तैयार करने और उसका परीक्षण करने के लिए निम्नलिखित प्रक्रिया का उपयोग किया:
हमने Github पर परीक्षणों के दौरान JMeter परीक्षण, MySQL स्थिति और MySQL वेरिएबल प्रकाशित किए।
इस शोध के दौरान हमने जिन मेट्रिक्स को देखा वे हैं:
हमने कार्यभार की तुलना करने के लिए सीपीयू उपयोग और क्वेरी प्रति सेकंड मेट्रिक्स एकत्र किए।
Aimeos Laravel ऑनलाइन दुकानें, मार्केटप्लेस और B2B ऐप्स बनाने के लिए एक लोकप्रिय ई-कॉमर्स वेब ऐप फ्रेमवर्क है। Aimeos के साथ, उपयोगकर्ता Laravel के लिए API-प्रथम ईकॉमर्स दुकानें बना सकते हैं जो 1 बिलियन से अधिक वस्तुओं का समर्थन कर सकती हैं। यह 30 से अधिक भाषाओं में उपलब्ध है और इसके 300,000 से अधिक इंस्टाल हैं।
Aimeos का परीक्षण करने के लिए, हमने दस उपयोगकर्ताओं के साथ परीक्षण शुरू किया, लेकिन हमें उपयोगकर्ताओं की संख्या कम करनी पड़ी क्योंकि हम परीक्षण को डिफ़ॉल्ट कॉन्फ़िगरेशन के साथ पूरा नहीं कर सके।
हमने 500 एमबी डेटा के साथ डेटाबेस को सीड किया।
हमारी परीक्षण अवधि 10 मिनट थी।
हमने इस्तेमाल किया:
Aimeos Laravel के लिए प्रयुक्त कॉन्फ़िगरेशन इस प्रकार है:
query_cache_type=1 query_cache_size=134217728 query_cache_limit=16777216 query_cache_min_res_unit=4096 thread_cache_size=0 key_buffer_size=8388608 max_allowed_packet=1073741824 sort_buffer_size=2097152 read_rnd_buffer_size=262144 bulk_insert_buffer_size=8388608 myisam_sort_buffer_size=8388608 innodb_buffer_pool_chunk_size=134217728 innodb_buffer_pool_size=805306368 max_heap_table_size=16777216 tmp_table_size=16777216 join_buffer_size=8388608 max_connections=151 table_open_cache=2048 table_definition_cache=1408 innodb_flush_log_at_trx_commit=1 innodb_log_file_size=201326592 innodb_log_buffer_size=16777216 innodb_write_io_threads=4 innodb_read_io_threads=4 innodb_file_per_table=1 innodb_flush_method=O_DIRECT innodb_thread_concurrency=0 innodb_purge_threads=4 optimizer_search_depth=0 thread_handling=pool-of-threads thread_pool_size=2
Aimeos Laravel परीक्षण के परिणामों ने डिफ़ॉल्ट और ट्यून किए गए कॉन्फ़िगरेशन के बीच नाटकीय प्रदर्शन में सुधार दिखाया।
MySQL के अनुकूलन के परिणामस्वरूप औसत सर्वर प्रतिक्रिया समय में महत्वपूर्ण सुधार हुआ, जो कि घटकर 1.4 सेकंड से 800 मिलीसेकंड से कम हो गया।
प्रतिक्रिया समय (विलंबता) में 42% की गिरावट आई और औसत सीपीयू उपयोग में 86% की गिरावट आई, जबकि क्वेरी प्रति सेकंड में अविश्वसनीय 291% की वृद्धि हुई। प्रति सेकंड 12 से 35 प्रश्न।
परिणामों का ग्राफ़ नीचे उपलब्ध है:
प्रतिक्रिया समय (एमएस), Aimeos ने MySQL कॉन्फ़िगरेशन बनाम डिफ़ॉल्ट को ट्यून किया
सीपीयू उपयोग (%), ऐमियोस ट्यून्ड MySQL कॉन्फ़िगरेशन बनाम डिफ़ॉल्ट
प्रति सेकंड प्रश्न, Aimeos ने MySQL कॉन्फ़िगरेशन बनाम डिफ़ॉल्ट को ट्यून किया
हमने पूछताछ की इस पंक्ति की जांच करने के लिए इनिटलैब कंपनी के लारवेल डेवलपर्स गेवॉर्ग मकर्चयन और सर्गेई सिनित्सा के साथ मिलकर काम किया और उनकी विशेषज्ञता के लिए बहुत आभारी हैं।
सर्गेई ने ऐमियोस को तैनात किया, और गेवॉर्ग ने डेटाबेस सीडिंग के लिए कोड तैयार किया।
Aimeos Laravel का उपयोग करते हुए हमारी परीक्षण प्रक्रिया ने डेटाबेस को कॉन्फ़िगर करने के बाद प्रतिक्रिया समय (विलंबता), सीपीयू उपयोग, और प्रति सेकंड क्वेरीज़ में नाटकीय सुधार दिखाया। सर्वर कॉन्फ़िगरेशन.
प्रतिक्रिया समय (विलंबता) 42% के बीच गिर गया, जबकि सीपीयू उपयोग 86% गिर गया। Aimeos Laravel 500एमबी में प्रति सेकंड क्वेरीज़ में 291% की वृद्धि हुई।
निष्कर्ष में, MySQL ट्यूनिंग डेटाबेस प्रबंधन का एक अनिवार्य पहलू है जो लारवेल अनुप्रयोगों के प्रदर्शन पर महत्वपूर्ण प्रभाव डाल सकता है। खराब प्रदर्शन करने वाले वेब एप्लिकेशन के कारण पेज लोड समय में वृद्धि, धीमी अनुरोध हैंडलिंग और खराब उपयोगकर्ता अनुभव हो सकता है, जो एसईओ और बिक्री को नकारात्मक रूप से प्रभावित कर सकता है। MySQL ट्यूनिंग के साथ वेब ऐप्स के प्रदर्शन को अनुकूलित करके, उद्यम और संगठन बिक्री, पेजव्यू, रूपांतरण दर और एसईओ रैंकिंग बढ़ा सकते हैं।
इस शोध के साथ, हम लारवेल अनुप्रयोगों के प्रदर्शन को बेहतर बनाने के साधन के रूप में MySQL ट्यूनिंग के मूल्य को प्रदर्शित करने की उम्मीद करते हैं और लारवेल डेवलपर्स को अपने ऐप्स के प्रदर्शन को अनुकूलित करते समय इस अभ्यास पर विचार करने के लिए प्रोत्साहित करते हैं।
रिलीम जैसे टूल का उपयोग करके, डेटाबेस को इष्टतम प्रदर्शन के लिए स्वचालित रूप से कॉन्फ़िगर किया जा सकता है, जिससे सॉफ्टवेयर विकास टीमों पर बोझ कम हो जाता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3