मेरे पास Magento की वेबसाइट है। कोई भी उपयोगकर्ता नहीं है (अधिकतम 2-3 समय पर)।
हमारा सर्वर है: CPU: 2000MHz RAM: 2048Mb HDD: 50000Mb।
मैंने ZendServerCE (apc + memcached + Zend Optimizer + Zend Data Cache) स्थापित किया। मैं ज्ञापन बंद कर दिया, क्योंकि वेबसाइट बहुत बुरी तरह से भरी हुई है। मैंने व्यवस्थापक कंसोल में फ्लैट प्रकार की संरचना, reindexed और कैश्ड डेटा सेट किया है।
तो मेरे पास apc + Zend Optimizer + Zend Data Cache है ।
पहली समस्या यह है कि मैं रनटाइम की जांच करता हूं कि कैसे प्रेषण काम करता है। start_session () कॉलिंग में लगभग 500-700ms लगते हैं। इसका अच्छा परिणाम नहीं लगता है। इतना लंबा क्यों, मुझे नहीं पता।
मैंने इसे पढ़ा है: http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_key_buffer_size और अपने सर्वर के लिए इष्टतम विकल्पों का पता लगाया।
प्रति घंटा:
Key_read_requests = 8887
Key_reads = 252
Key_write_request = 187
Key_writes = 146
आप देखते हैं कि 252/8887> 0.01, लेकिन बहुत अधिक नहीं। यह इष्टतम मूल्य है जो मुझे कभी मिला है। अन्य परिणाम> 6 से शुरू हुए।
यहाँ my.cnf है:
key_buffer = 48M
myisam_sort_buffer = 2M
sort_buffer = 2M
read_buffer_size = 2M
join_buffer = 2M
read_rnd_buffer = 2M
max_allowed_packet = 128M
thread_stack = 192K
thread_cache_size = 16
query_cache_type = 1
myisam-recover = BACKUP
max_connections = 50
table_cache = 256
#thread_concurrency = 10
query_cache_limit = 8M
query_cache_size = 98M
3. किसी कारण के लिए ज्ञापन अच्छा नहीं था। मैंने बंद कर दिया। लेकिन zend डेटा कैश और zend ऑप्टिमाइज़र अभी भी काम करते हैं।
४। एपीसी सही लगता है। कंट्रोलर एक्शन को लोड करने के लिए पहली बार 3-4 सेकंड का समय लगता है (मैं इसे सेट करने के लिए वहाँ मर जाता हूं)
५। कई मिनटों के बाद मैंने mysql पुनः आरंभ किया मुझे अच्छा परिणाम मिला। पेज 1.5 से 2.5 सेकंड तक लोड हो रहे थे। लेकिन अब (कई घंटों के बाद) इसमें 6-10 सेकंड का समय लगता है। मुझे इसका कारण नहीं मिल रहा है।
तो क्या आपको यहाँ कुछ गलत विन्यास दिखाई देता है? हो सकता है कि मेरा सर्वर मैगनेटो के लिए उपयुक्त न हो?
अद्यतन 1: लगभग 600 श्रेणियां और 1000 उत्पाद आज और लगभग 20000 श्रेणियां (विभिन्न वेबस्टोर्स के लिए) और भविष्य में 1500-3000 उत्पाद।
बहुत सारी विशेषताएँ नहीं हैं।
अद्यतन 2 मैंने कहा है कि ssh कंसोल बहुत धीमी गति से काम करता है। मैंने सर्वर को रिबूट किया और अब यह तेजी से काम करता है। इसका मतलब है कि मुझे रैम की समस्या है। पर्याप्त जगह नहीं हैं।
यह प्रारंभिक स्थिति है जो अपाचे है:
total used free shared buffers cached
Mem: 2048 600 1447
अद्यतन 3 मुझे मिल गया। अब इसे 0.5-1.5 सेकंड के लिए लोड किया जाता है
यहाँ विन्यास है: mysql
[mysqld]
key_buffer_size = 256M
tmp_table_size = 32M
max_heap_table_size = 32M
myisam_sort_buffer = 4M
sort_buffer = 4M
read_buffer_size = 4M
join_buffer = 4M
read_rnd_buffer = 4M
max_allowed_packet = 64M
thread_stack = 192K
thread_cache_size = 16
query_cache_type = 1
myisam-recover = BACKUP
max_connections = 20
table_cache = 1024
innodb_buffer_pool_size = 128M
query_cache_limit = 24M
query_cache_size = 256M
php
[apc]
apc.stat=1
apc.enabled=1
apc.optimization=0
apc.cache_by_default=1
apc.shm_segments=10
apc.shm_size=256M
apc.ttl=0
apc.user_ttl=0
apc.num_files_hint=10000
;apc.mmap_file_mask="/tmp/apc"
apc.max_file_size=5M
apc.enable_cli=1
apc.mmap_file_mask="/tmp/apc.XXXXXX"
apc.slam_defense=0
apc.user_entries_hint=10000
सभी सही काम करता है, लेकिन एक सवाल बना हुआ है। APC मुझे यह सांख्यिकीय दिखाता है:
इतना छोटा क्यों मारा? कोई विचार?
xhprof
लोड करने में सबसे अधिक समय ले रहा हूं, इसका एक दृश्य प्राप्त करने की कोशिश करता हूं । क्या यह उत्पादन सर्वर लोड के तहत या केवल परीक्षण के लिए है?