MySQL

2013-02-15 6 views
37

के लिए अधिकतम समवर्ती कनेक्शन मैं अपने कॉलेज के लिए सोशल नेटवर्किंग वेबसाइट के लिए एक MySQL डेटाबेस सेट अप करना चाहता हूं।MySQL

मेरे ऐप में अधिकतम 10,000 उपयोगकर्ता हो सकते हैं। समवर्ती MySQL कनेक्शन की अधिकतम संख्या क्या संभव है?

+4

पर्याप्त है कि आपको चिंता करने की आवश्यकता नहीं है। –

+0

क्या 500-1000 समवर्ती कनेक्शन इसे नियंत्रित कर सकते हैं? – user2075703

+1

मुझे भी mysql का उपयोग हडूप या मेमकैच के साथ करना चाहिए ताकि इसे तेज़ी से – user2075703

उत्तर

62

प्रति MySQL डॉक्स के रूप में: http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_user_connections

maximum range: 4,294,967,295 (e.g. 2**32 - 1) 

आप शायद, स्मृति, फ़ाइल हैंडल, और नेटवर्क सॉकेट से बाहर चलाने चाहते हैं अपने सर्वर से काफी समय पहले आप कहीं भी है कि सीमा के करीब हो गया है।

+0

धन्यवाद के लिए एक सर्वर खरीदने की ज़रूरत है .. लेकिन क्या मुझे गति को बढ़ाने के लिए हैडॉप या memcached जैसे mysql के साथ कुछ और उपयोग करना चाहिए? – user2075703

+0

क्योंकि MySQL हो सकता है समवर्ती कनेक्शन को संभालेगा। लेकिन निश्चित रूप से यह बहुत धीमा हो जाएगा जबकि बहुत से कनेक्शन – user2075703

+12

केवल तभी हैं जब मूल mysql सेटअप पर्याप्त नहीं है। सरल शुरू करें, आवश्यकतानुसार जटिलता जोड़ें। कनेक्शन की संख्या एक मुद्दा नहीं है। यह वही कनेक्शन कर रहा है। Mysql में लॉग इन 10,000 लोग कुछ भी नहीं है। बड़े जटिल मेमोरी-होगिंग प्रश्नों वाले 10,000 उपयोगकर्ता समस्या है। और याद रखें, 10,000 लोग आपकी साइट पर हो सकते हैं, लेकिन उनमें से सभी एक ही समय में डीबी प्रश्नों का कारण नहीं बनेंगे। आप केवल एक समय पर चल रहे 50 प्रश्न पूछ सकते हैं। –

33

आपके पास 10,000 उपयोगकर्ता कुल हो सकते हैं, लेकिन यह समवर्ती उपयोगकर्ताओं के समान नहीं है। इस संदर्भ में, समवर्ती स्क्रिप्ट चल रही हैं।

उदाहरण के लिए, यदि आपका आगंतुक index.php पर जाता है, और यह कुछ उपयोगकर्ता विवरण प्राप्त करने के लिए डेटाबेस क्वेरी बनाता है, तो यह अनुरोध 250ms के लिए लाइव हो सकता है। जब आप पूछताछ कर रहे हों, तो स्क्रिप्ट की अवधि के लिए इसे छोड़ने के बजाय, आप कितने समय तक MySQL कनेक्शन खोलने और बंद करके उन्हें और भी सीमित कर सकते हैं।

हालांकि यह फार्मूला किसी भी प्रकार की भविष्यवाणी करने के लिए कितने कनेक्शन एक समय में खुला होगा बनाने के लिए मुश्किल है, मैं निम्नलिखित उद्यम चाहते हैं:

आप शायद नहीं होगा 500 से अधिक सक्रिय किसी भी पर उपयोगकर्ताओं 10,000 उपयोगकर्ताओं के उपयोगकर्ता आधार के साथ दिया गया समय। उन 500 समवर्ती उपयोगकर्ताओं में से, अधिकतर पर एक समय में 10-20 समवर्ती अनुरोध किए जा रहे हैं।

इसका मतलब है, आप वास्तव में केवल 10-20 समवर्ती अनुरोध स्थापित कर रहे हैं।

जैसा कि अन्य लोगों ने उल्लेख किया है, आपके पास उस विभाग में चिंता करने की कोई बात नहीं है।

+0

फेसबुक के पैमाने की साइट मानते हुए, और यह भी मानते हुए कि मेमकैड जैसी कोई कैश परत नहीं है, ताकि सभी प्रश्नों को डेटाबेस को हिट करना पड़े, क्या MySQL ऐसे लोड को संभालने में सक्षम होगा? – SexyBeast

+0

@SexyBeast क्या आपको इस पर कोई जवाब मिला या साझा करने के लिए अब तक कोई समझ है? –

+0

मेरी सीमित समझ यह है कि यदि आप Google ऑटो सुझाव, या यहां तक ​​कि मामूली तेज़ प्रतिक्रिया जैसे वास्तविक समय की प्रतिक्रिया की तलाश में हैं, तो डेटाबेस इसे संभाल नहीं सकता है, यह परिमाण के आदेशों से धीमा कर देगा। – SexyBeast