andycole 0 Zgłoś post Napisano Marzec 31, 2012 (edytowany) Witam, Mój VPS to: 2x Intel® Xeon E5520 @ 2.27GHz 4 GB RAM Próbuję jak najoptymalniej go skonfigurować, ale miotam się trochę jak dziecko we mgle. Poszukuję jakiejś dobrej duszy, która pomoże w zoptymalizowaniu konfiguracji serwera albo dobrego specjalisty, który pomoże profesjonalnie - odpłatnie. Ustawienia mysql: [mysqld] collation_server=utf8_unicode_ci character_set_server=utf8 skip-character-set-client-handshake max_connections=70 max_user_connections=30 read_buffer_size = 8M read_rnd_buffer_size = 8M sort_buffer = 16M join_buffer_size = 2M key_buffer = 256M query_cache_size = 32M max_heap_table_size = 256M tmp_table_size = 256M max_allowed_packet = 128M table_cache = 1024 ### Global variables ### thread_stack = 512K thread_cache_size = 384 wait_timeout = 80 myisam_sort_buffer_size = 64M binlog_cache_size = 65536 max_join_size = 8M thread_concurrency = 4 query_cache_limit = 3M query_cache_type = 1 query_cache_min_res_unit = 1024 #low_priority_updates = 1 long_query_time = 1 log_error = error.dat log-slow-queries = slow.dat log-queries-not-using-indexes skip-innodb skip-name-resolve skip-bdb nginx worker_processes 2; #worker_rlimit_nofile 3000; user apache; events{ worker_connections 1024; } http{ include mime.types; default_type application/octet-stream; server_tokens off; access_log off; open_file_cache max=2000 inactive=1m; open_file_cache_valid 1m; open_file_cache_min_uses 3; open_file_cache_errors on; fastcgi_buffer_size 4k; fastcgi_buffers 256 4k; fastcgi_max_temp_file_size 0; #proxy_buffers 256 4k; #proxy_max_temp_file_size 0; gzip on; gzip_min_length 2000; gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript; include /usr/local/nginx/conf/vhosts/*; } php fpm emergency_restart_threshold 10 emergency_restart_interval 1m process_control_timeout 5s daemonize yes max_children 25 StartServers 10 MinSpareServers 5 MaxSpareServers 20 request_terminate_timeout 15s request_slowlog_timeout 5s rlimit_files 0 rlimit_core 0 max_requests 600 memcached ustawiony na 128mb, zużycie na poziomie 3% zrzut z iostat: Linux 2.6.18-194.8.1.el5.028stab070.5PAE (vps) 03/31/12 _i686_ avg-cpu: %user %nice %system %iowait %steal %idle 3.63 0.00 1.60 18.47 0.00 76.30 Load utrzymuje się na poziomie ok 1. Na liście procesów nie widać jakiegoś specjalnie dużego obciążenia, ale iowait skacze i to wysoko. Status mysqla zwraca mi: [/left] [left]Created_tmp_tables 351 Created_tmp_disk_tables 64 Open_tables 387 Opened_tables 393 Podejrzewam, że wina leży właśnie po stronie mysqla - tworzone są tabele na dysku. Tylko jak sobie z tym poradzić? Wydaje mi się że max_heap_table_size = 256M tmp_table_size = 256M table_cache = 1024 są wystarczające.... Jak uważacie? Może dałoby radę też zoptymalizować ustawienia nginx/php fcgi dla większej wydajności? Pozdrawiam andycole Edytowano Marzec 31, 2012 przez andycole (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Misiek08 285 Zgłoś post Napisano Marzec 31, 2012 Jaki masz ruch na tym i co na tym stoi? Udostępnij ten post Link to postu Udostępnij na innych stronach
andycole 0 Zgłoś post Napisano Marzec 31, 2012 serwis piłkarski, teraz wg GA ok 100online staty miesięczne to 160k UU, 1,5mln odsłon Udostępnij ten post Link to postu Udostępnij na innych stronach
lazy 33 Zgłoś post Napisano Marzec 31, 2012 Witam, Mój VPS to: 2x Intel® Xeon E5520 @ 2.27GHz 4 GB RAM Próbuję jak najoptymalniej go skonfigurować, ale miotam się trochę jak dziecko we mgle. Poszukuję jakiejś dobrej duszy, która pomoże w zoptymalizowaniu konfiguracji serwera albo dobrego specjalisty, który pomoże profesjonalnie - odpłatnie. Ustawienia mysql: [mysqld] collation_server=utf8_unicode_ci character_set_server=utf8 skip-character-set-client-handshake max_connections=70 max_user_connections=30 read_buffer_size = 8M read_rnd_buffer_size = 8M sort_buffer = 16M join_buffer_size = 2M key_buffer = 256M query_cache_size = 32M max_heap_table_size = 256M tmp_table_size = 256M max_allowed_packet = 128M table_cache = 1024 ### Global variables ### thread_stack = 512K thread_cache_size = 384 wait_timeout = 80 myisam_sort_buffer_size = 64M binlog_cache_size = 65536 max_join_size = 8M thread_concurrency = 4 query_cache_limit = 3M query_cache_type = 1 query_cache_min_res_unit = 1024 #low_priority_updates = 1 long_query_time = 1 log_error = error.dat log-slow-queries = slow.dat log-queries-not-using-indexes skip-innodb skip-name-resolve skip-bdb nginx worker_processes 2; #worker_rlimit_nofile 3000; user apache; events{ worker_connections 1024; } http{ include mime.types; default_type application/octet-stream; server_tokens off; access_log off; open_file_cache max=2000 inactive=1m; open_file_cache_valid 1m; open_file_cache_min_uses 3; open_file_cache_errors on; fastcgi_buffer_size 4k; fastcgi_buffers 256 4k; fastcgi_max_temp_file_size 0; #proxy_buffers 256 4k; #proxy_max_temp_file_size 0; gzip on; gzip_min_length 2000; gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript; include /usr/local/nginx/conf/vhosts/*; } php fpm emergency_restart_threshold 10 emergency_restart_interval 1m process_control_timeout 5s daemonize yes max_children 25 StartServers 10 MinSpareServers 5 MaxSpareServers 20 request_terminate_timeout 15s request_slowlog_timeout 5s rlimit_files 0 rlimit_core 0 max_requests 600 memcached ustawiony na 128mb, zużycie na poziomie 3% zrzut z iostat: Linux 2.6.18-194.8.1.el5.028stab070.5PAE (vps) 03/31/12 _i686_ avg-cpu: %user %nice %system %iowait %steal %idle 3.63 0.00 1.60 18.47 0.00 76.30 Load utrzymuje się na poziomie ok 1. Na liście procesów nie widać jakiegoś specjalnie dużego obciążenia, ale iowait skacze i to wysoko. Status mysqla zwraca mi: [/left] [left]Created_tmp_tables 351 Created_tmp_disk_tables 64 Open_tables 387 Opened_tables 393 Podejrzewam, że wina leży właśnie po stronie mysqla - tworzone są tabele na dysku. Tylko jak sobie z tym poradzić? Wydaje mi się że max_heap_table_size = 256M tmp_table_size = 256M table_cache = 1024 są wystarczające.... Jak uważacie? Może dałoby radę też zoptymalizować ustawienia nginx/php fcgi dla większej wydajności? Pozdrawiam andycole czesc tabel mysql i tak musi zapisac na dysku, a nie na stosie, mozesz sprobowac dodac tmpdir=/dev/shm tylko na openvz wielkosc tmpfsa jest limitowana przez parametr shmpages, jesli bedzie zbyt mala napisz do swojego dostawcy -- Lazy Udostępnij ten post Link to postu Udostępnij na innych stronach
andycole 0 Zgłoś post Napisano Marzec 31, 2012 tak, właśnie openvz mam, shmpages (held 20260, maxheld 36644, barrier 262144, limit 262144), info z pliku /proc/user_beancounters wartość jest zbyt mała czy mogą być problemy? Udostępnij ten post Link to postu Udostępnij na innych stronach
Misiek08 285 Zgłoś post Napisano Marzec 31, 2012 Podaj na PW lub tutaj adres serwisu. Może masz gdzie jakieś wąskie gardło w skryptach? Udostępnij ten post Link to postu Udostępnij na innych stronach
lazy 33 Zgłoś post Napisano Kwiecień 2, 2012 tak, właśnie openvz mam, shmpages (held 20260, maxheld 36644, barrier 262144, limit 262144), info z pliku /proc/user_beancounters wartość jest zbyt mała czy mogą być problemy? bariera jest ustawiona na 1GB wiec powinno wystarczyc, jesli i/o to w wiekszosci zapisy i sa generowane przez tabele tymczasowe to przelaczenie tmpdir na /dev/shm moze znacznie poprawic wydajnosc wiec mysle ze warto sprobowac -- Lazy Udostępnij ten post Link to postu Udostępnij na innych stronach
andycole 0 Zgłoś post Napisano Kwiecień 2, 2012 jestem na etapie przenosin do innej firmy, tam zobaczymy czy problem pojawi się ponownie dzięki za pomoc Udostępnij ten post Link to postu Udostępnij na innych stronach