Saya memiliki situs web magento. Tidak ada pengguna (maks 2-3 pada waktu).
Server kami adalah: CPU: 2000MHz RAM: 2048Mb HDD: 50000Mb.
Saya menginstal ZendServerCE (apc + memcached + Zend Optimizer + Zend Data Cache). Saya mematikan memcached, karena situs web memuat jauh lebih buruk. Saya mengatur struktur tipe datar, mengindeks ulang dan cache data di admin konsol.
Jadi saya punya apc + Zend Optimizer + Zend Data Cache .
Masalah pertama adalah saya memeriksa runtime bagaimana cara kerja pengiriman. panggilan start_session () membutuhkan waktu sekitar 500-700 ms. Tampaknya hasilnya tidak bagus. Kenapa begitu lama, saya tidak tahu.
Saya sudah membaca yang ini: http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_key_buffer_size dan menemukan opsi optimal untuk server saya.
Per jam:
Key_read_requests = 8887
Key_reads = 252
Key_write_request = 187
Key_writes = 146
Anda melihat 252/8887> 0,01, tetapi tidak terlalu banyak. Ini nilai optimal yang pernah saya dapatkan. Hasil lainnya dimulai dari> 6.
Inilah 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. Memcached karena alasan tertentu tidak baik. Saya mematikannya. Tetapi cache data zend dan optimizer zend masih berfungsi.
4. APC tampaknya benar. Untuk memuat aksi pengontrol dibutuhkan 3-4 detik untuk pertama kalinya (saya mengatur mati () di sana untuk memeriksanya) dan untuk pertama kali dibutuhkan 1 - 1,3 detik.
5. Setelah beberapa menit saya memulai kembali mysql saya mendapat hasil yang baik. Halaman dimuat dari 1,5 hingga 2,5 detik. Tetapi sekarang (setelah beberapa jam) dibutuhkan 6-10 detik. Saya tidak dapat menemukan alasannya.
Jadi, apakah Anda melihat beberapa konfigurasi yang salah di sini? Mungkin server saya tidak cocok untuk magento?
UPDATE 1: sekitar 600 kategori dan 1000 produk saat ini dan sekitar 20000 kategori (untuk toko web yang berbeda) dan 1500-3000 produk di masa depan.
Tidak banyak atribut.
PEMBARUAN 2 Saya sudah tahu bahwa ssh console bekerja terlalu lambat. Saya reboot server dan sekarang berfungsi cepat. itu berarti saya punya masalah dengan RAM. Tidak ada cukup ruang.
Ini status awal tanpa apache:
total used free shared buffers cached
Mem: 2048 600 1447
PEMBARUAN 3 Saya mengerti. Sekarang dimuat selama 0,5-1,5 detik
Berikut ini konfigurasi: 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
Semua berfungsi dengan sempurna, tetapi satu pertanyaan tetap ada. APC menunjukkan statistik ini kepada saya:
Mengapa hit sangat kecil? Ada ide?
xhprof
dan mencoba untuk mendapatkan visualisasi dari apa yang mengambil waktu paling banyak untuk memuat. Apakah ini server produksi sedang dimuat atau hanya untuk pengujian?