2010-09-11 13 views
21

के बारे में नहीं सुना है, काम पर, हमने हाल ही में मुझे "बड़े पैमाने पर" एक आवेदन डिजाइन करना शुरू कर दिया है (हम कई लाखों की सेवा करने की क्षमता के लिए इंजीनियरिंग कर रहे हैं एक दिन हिट करता है)। वरिष्ठ देवताओं और sysadmin में से एक सर्वर पर memcache स्थापित किया है।मेमकेचे, एपीसी, एक्सकैच और अन्य विकल्पों के बीच अंतर जो मैंने

जैसा कि मैं इसे समझता हूं, मेमकैच एक्स परिणाम के लिए क्वेरी परिणामों और स्मृति में कुछ तालिकाओं को रखेगा और सबकुछ डरावना डोरी रखेगा।

ऐसा लगता है कि memcache की कमी यह है कि मैं अपने जीवन के लिए अपने स्थानीय देव पर्यावरण पर इसे स्थापित करने के लिए प्रबंधन नहीं कर सकता। मैंने अपने लिए संकलित करने के तरीके पर कुछ अलग निर्देशों का पालन किया है। अधिकांश, अगर सभी चरणों को नहीं ठीक से काम करने लेकिन PHPLoad पर यह त्रुटि प्राप्त लगते हैं:

[11-Sep-2010 16:02:30] PHP Warning: PHP Startup: Unable to load dynamic library '/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcached.so' - dlopen(/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcached.so, 9): image not found in Unknown on line 0 

नहीं प्राथमिक प्रश्न लेकिन incedentally, यदि आप बर्फ तेंदुए पर MAMP 1.9 के लिए Memcache संकलन कर लिया है, तो कृपया मुझे चाल पता है।

मेरा प्राथमिक प्रश्न यह है कि विभिन्न वेब कैशिंग तकनीकों के बीच मतभेद क्या हैं। मैं Memcache, एपीसी और XCache (यहाँ: Cache results of a mysql query manually to a txt file) का उल्लेख देखा है लेकिन प्रत्येक के बीच पेशेवरों, विपक्ष और मतभेदों को पता नहीं है।

मेरे दिमाग में, मेमेकैच का लाभ यह है कि परियोजना के मुख्य देव और हमारे sysadmin ने चुना है। यह बोलना foobar जा रहा कोशिश करते हैं और स्थापित करने और Mac पर संकलित करने के लिए की नुकसान है। : - ^)

कोई भी जो मुझे किसी से सुनना अच्छा लगेगा जो प्रत्येक कैचिन प्रौद्योगिकियों के प्रत्येक (या यहां तक ​​कि एक) के पेशेवरों और विपक्ष का आकलन कर सकता है। उनका सबसे अच्छा उपयोग कहां किया जाता है, उनका सर्वोत्तम उपयोग कैसे किया जाता है। और इसी तरह।

यह सब उपयोगी जानकारी मुझे लगता है कि है।

धन्यवाद मेरे ज्ञान का विस्तार करने के लिए अपना समय उधार देने के लिए बहुत बहुत। - एलेक्स।

उत्तर

31

सबसे पहले, opcode cachers for php की एक सूची।

दूसरा Memcache/memcached एक Opcode Cacher नहीं है। यह एक वितरित स्मृति कैशिंग प्रणाली है। यह आपके PHP कोड की गति/प्रदर्शन में सुधार नहीं करता है। इसका उपयोग केवल डेटा स्टोर करने के लिए किया जा सकता है।

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

मैं आमतौर पर ओपोड कैचर के लिए एपीसी चुनता हूं (यह कथित रूप से PHP 6 के मूल में शामिल किया जाएगा)। लेकिन अगर मैं भी साइट मैं भी memcached का उपयोग करेगा के लिए एक से अधिक वेब सर्वर की है।


संपादित करें 1 मुझे यह बहुत MAMP पर सेटअप एपीसी, Memcache को कष्टप्रद है सहमत हैं। हालांकि इस तरह से निपटने के बाहर ट्यूटोरियल हैं।


संपादित 2 अपने अनुप्रयोग के लिए सबसे अच्छा Opcode Cacher के संबंध में भी सच है जो सर्वर का प्रयोग कर रहे पर निर्भर करता है। कुछ कुछ प्रणालियों पर बेहतर काम करते हैं।यह आपके ऐप के आकार और पैमाने पर भी निर्भर करता है कि कैसे कैचर प्रदर्शन करते हैं।


संपादित 3 बहुत दिलचस्प कुछ अलग cachers के प्रदर्शन की तुलना के बारे में article here। (यह आलेख 2006 में लिखा गया प्रतीत होता है और वास्तव में वर्तमान संदर्भ के लिए उपयोग नहीं किया जाना चाहिए)

+0

बहुत बहुत धन्यवाद! यह वास्तव में मेरे लिए इसे रखने में मदद करता है :) –

1

एपीसी एक ऑपोड कैश है। यह पार्स किए गए PHP कोड को संग्रहीत करेगा ताकि प्रत्येक बार आपकी PHP फ़ाइलों को पार्स करने की आवश्यकता न हो।

मेमकैच डेटा कैश है। यह डेटा को एक प्रमुख मूल्य जोड़ी के रूप में संग्रहीत करेगा।

संबंधित मुद्दे