PDA

View Full Version : Server Optimisation Request


Nickless
Mon 18th Feb '08, 6:38pm
First of all, no overload on the server and only 10% memory usage. But even though I have such a powerfull server my web site loads very slowly. [webhatti.com]. I've done everything but could't manage to optimize apache and mysql. I had bought a server from hostgator then moved to layeredtech. They were both powerfull servers. Due to the slowness of my web sites, I moved to softlayer and bought a server. Again I am not satisfied with my pages' load time. That is my last chance, eva2000 :)


1. Dedicated
quad processor multi core servers
AMD Opteron 8212
CPU Speed: 8 x 2.00GHz
CPU MHz: 1000MHz
CPU Cache: 8 x 1MB
16GB DDR2 677 ECC
2 x 250GB SATAII HDD
Centos 4 (32 bit)
Apache 2.2.8
PHP version: PHP 5.2.5
MySQL version: MYSQL 5.0.452. vBulletin v3.7 Beta 4

3. No innodb type databases/tables.

4. cPanel setup for mysql

5. Top stats..

PID USER PR NI %CPU TIME+ %MEM VIRT RES SHR S COMMAND
26327 mysql 5 -10 115 85:34.81 2.2 2439m 354m 3508 S mysqld
1481 nobody 15 0 30 0:26.50 0.1 27784 14m 3308 S httpd
1138 nobody 15 0 20 0:07.79 0.1 23856 10m 3368 S httpd
1268 nobody 15 0 20 0:03.17 0.1 23660 11m 3608 S httpd
1216 nobody 16 0 19 0:06.71 0.1 23500 10m 3632 S httpd
1550 nobody 15 0 15 0:00.75 0.1 23332 10m 3308 S httpd
1574 nobody 15 0 14 0:01.66 0.1 23616 10m 3276 S httpd
1489 nobody 15 0 13 0:01.78 0.1 23420 10m 3624 S httpd
1273 nobody 15 0 12 0:05.69 0.1 23364 10m 3332 S httpd
1436 nobody 15 0 12 0:01.45 0.1 23440 10m 3352 S httpd
1471 nobody 16 0 11 0:01.04 0.1 31204 18m 3308 S httpd
1526 nobody 17 0 10 0:01.26 0.1 28712 15m 3324 S httpd
1510 nobody 16 0 9 0:03.33 0.1 23492 10m 3616 S httpd
1625 nobody 16 0 9 0:01.76 0.1 31256 18m 3292 R httpd
1378 nobody 16 0 4 0:01.62 0.1 29876 16m 3376 S httpd
1443 nobody 15 0 3 0:01.46 0.1 23300 10m 3316 S httpd
735 nobody 15 0 2 0:10.68 0.1 23524 10m 3636 S httpd
930 nobody 15 0 2 0:20.14 0.1 23560 10m 3312 S httpd
1352 nobody 15 0 2 0:01.25 0.1 23532 10m 3304 S httpd
1483 nobody 16 0 2 0:01.20 0.1 23300 10m 3600 S httpd
1340 nobody 16 0 1 0:05.43 0.1 25864 13m 3620 S httpd
1618 nobody 16 0 1 0:00.04 0.1 22668 9652 2980 S httpd
1272 nobody 16 0 1 0:05.10 0.1 26476 13m 3324 S httpd
1342 nobody 15 0 1 0:03.42 0.1 23444 10m 3356 S httpd
1609 root 16 0 1 0:00.09 0.0 3712 1168 780 R top
1620 nobody 15 0 1 0:00.68 0.1 24264 11m 3240 S httpd
1175 nobody 15 0 0 0:05.79 0.1 23728 11m 3756 S httpd
1245 nobody 15 0 0 0:05.85 0.1 23840 10m 3360 S httpd
1412 nobody 15 0 0 0:03.37 0.1 23544 10m 3584 S httpd
1435 nobody 15 0 0 0:01.95 0.1 24620 11m 3316 S httpd
1438 nobody 16 0 0 0:03.06 0.1 25396 12m 3308 S httpd
1523 nobody 15 0 0 0:02.11 0.1 27108 14m 3308 S httpd
1528 nobody 15 0 0 0:01.73 0.1 23456 10m 3304 S httpd
1577 nobody 16 0 0 0:00.21 0.1 23008 10m 3252 S httpd
1578 nobody 16 0 0 0:00.96 0.1 23296 10m 3564 S httpd
1610 nobody 15 0 0 0:00.44 0.1 23300 10m 3288 S httpd
11699 mailman 16 0 0 0:00.38 0.0 10316 6600 2556 S python2.4
11702 mailman 16 0 0 0:00.38 0.0 10712 6596 2556 S python2.4
18788 named 25 0 0 0:32.91 0.0 110m 4008 1912 S named
1 root 16 0 0 0:01.98 0.0 1872 504 432 S init
2 root RT 0 0 0:00.09 0.0 0 0 0 S migration/0
3 root 34 19 0 0:00.03 0.0 0 0 0 S ksoftirqd/0
4 root RT 0 0 0:00.11 0.0 0 0 0 S migration/1
5 root 34 19 0 0:00.11 0.0 0 0 0 S ksoftirqd/1
6 root RT 0 0 0:00.11 0.0 0 0 0 S migration/2
7 root 34 19 0 0:00.39 0.0 0 0 0 S ksoftirqd/2
8 root RT 0 0 0:00.07 0.0 0 0 0 S migration/3
9 root 34 19 0 0:00.12 0.0 0 0 0 S ksoftirqd/3
10 root RT 0 0 0:00.05 0.0 0 0 0 S migration/4

6- my.cnf

[mysqld]
safe-show-database
old_passwords
back_log = 75
skip-innodb
max_connections = 1000
myisam_sort_buffer_size = 64M
join_buffer_size = 1M
read_buffer_size = 12M
sort_buffer_size = 4M
table_cache = 10000
thread_cache_size = 384
wait_timeout = 25
connect_timeout = 10
tmp_table_size = 128M
max_heap_table_size = 128M
max_allowed_packet = 128M
max_connect_errors = 10
thread_concurrency = 8
read_rnd_buffer_size = 5M
bulk_insert_buffer_size = 8M
query_cache_limit = 10M
query_cache_size = 256M
query_cache_type = 2
query_prealloc_size = 131072
query_alloc_block_size = 65536
default-storage-engine = MyISAM
log-slow-queries=/var/log/mysql/log-slow-queries.log
long_query_time = 1
interactive_timeout = 120
key_buffer_size = 2048M


[mysqld_safe]
nice = -10
open_files_limit = 8192
[mysqldump]
quick
max_allowed_packet = 16M
[myisamchk]
key_buffer = 64M
sort_buffer = 64M
read_buffer = 16M
write_buffer = 16M
[mysqlhotcopy]
interactive-timeout


7- MySQL stats

+---------------------------------+------------------------------------------+
| Variable_name | Value |
+---------------------------------+------------------------------------------+
| auto_increment_increment | 1 |
| auto_increment_offset | 1 |
| automatic_sp_privileges | ON |
| back_log | 75 |
| basedir | / |
| binlog_cache_size | 32768 |
| bulk_insert_buffer_size | 8388608 |
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
| collation_connection | latin1_swedish_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
| completion_type | 0 |
| concurrent_insert | 1 |
| connect_timeout | 10 |
| datadir | /var/lib/mysql/ |
| date_format | %Y-%m-%d |
| datetime_format | %Y-%m-%d %H:%i:%s |
| default_week_format | 0 |
| delay_key_write | ON |
| delayed_insert_limit | 100 |
| delayed_insert_timeout | 300 |
| delayed_queue_size | 1000 |
| div_precision_increment | 4 |
| engine_condition_pushdown | OFF |
| expire_logs_days | 0 |
| flush | OFF |
| flush_time | 0 |
| ft_boolean_syntax | + -><()~*:""&| |
| ft_max_word_len | 84 |
| ft_min_word_len | 4 |
| ft_query_expansion_limit | 20 |
| ft_stopword_file | (built-in) |
| group_concat_max_len | 1024 |
| have_archive | YES |
| have_bdb | NO |
| have_blackhole_engine | YES |
| have_compress | YES |
| have_crypt | YES |
| have_csv | YES |
| have_dynamic_loading | YES |
| have_example_engine | YES |
| have_federated_engine | YES |
| have_geometry | YES |
| have_innodb | DISABLED |
| have_isam | NO |
| have_merge_engine | YES |
| have_ndbcluster | DISABLED |
| have_openssl | NO |
| have_ssl | NO |
| have_query_cache | YES |
| have_raid | NO |
| have_rtree_keys | YES |
| have_symlink | YES |
| hostname | aktasnet.webhatti.com |
| init_connect | |
| init_file | |
| init_slave | |
| innodb_additional_mem_pool_size | 1048576 |
| innodb_autoextend_increment | 8 |
| innodb_buffer_pool_awe_mem_mb | 0 |
| innodb_buffer_pool_size | 8388608 |
| innodb_checksums | ON |
| innodb_commit_concurrency | 0 |
| innodb_concurrency_tickets | 500 |
| innodb_data_file_path | |
| innodb_data_home_dir | |
| innodb_doublewrite | ON |
| innodb_fast_shutdown | 1 |
| innodb_file_io_threads | 4 |
| innodb_file_per_table | OFF |
| innodb_flush_log_at_trx_commit | 1 |
| innodb_flush_method | |
| innodb_force_recovery | 0 |
| innodb_lock_wait_timeout | 50 |
| innodb_locks_unsafe_for_binlog | OFF |
| innodb_log_arch_dir | |
| innodb_log_archive | OFF |
| innodb_log_buffer_size | 1048576 |
| innodb_log_file_size | 5242880 |
| innodb_log_files_in_group | 2 |
| innodb_log_group_home_dir | |
| innodb_max_dirty_pages_pct | 90 |
| innodb_max_purge_lag | 0 |
| innodb_mirrored_log_groups | 1 |
| innodb_open_files | 300 |
| innodb_rollback_on_timeout | OFF |
| innodb_support_xa | ON |
| innodb_sync_spin_loops | 20 |
| innodb_table_locks | ON |
| innodb_thread_concurrency | 8 |
| innodb_thread_sleep_delay | 10000 |
| interactive_timeout | 120 |
| join_buffer_size | 1044480 |
| key_buffer_size | 2147483648 |
| key_cache_age_threshold | 300 |
| key_cache_block_size | 1024 |
| key_cache_division_limit | 100 |
| language | /usr/share/mysql/english/ |
| large_files_support | ON |
| large_page_size | 0 |
| large_pages | OFF |
| lc_time_names | en_US |
| license | GPL |
| local_infile | ON |
| locked_in_memory | OFF |
| log | OFF |
| log_bin | OFF |
| log_bin_trust_function_creators | OFF |
| log_error | |
| log_queries_not_using_indexes | OFF |
| log_slave_updates | OFF |
| log_slow_queries | ON |
| log_warnings | 1 |
| long_query_time | 1 |
| low_priority_updates | OFF |
| lower_case_file_system | OFF |
| lower_case_table_names | 0 |
| max_allowed_packet | 134216704 |
| max_binlog_cache_size | 4294967295 |
| max_binlog_size | 1073741824 |
| max_connect_errors | 10 |
| max_connections | 1000 |
| max_delayed_threads | 20 |
| max_error_count | 64 |
| max_heap_table_size | 134217728 |
| max_insert_delayed_threads | 20 |
| max_join_size | 18446744073709551615 |
| max_length_for_sort_data | 1024 |
| max_prepared_stmt_count | 16382 |
| max_relay_log_size | 0 |
| max_seeks_for_key | 4294967295 |
| max_sort_length | 1024 |
| max_sp_recursion_depth | 0 |
| max_tmp_tables | 32 |
| max_user_connections | 0 |
| max_write_lock_count | 4294967295 |
| multi_range_count | 256 |
| myisam_data_pointer_size | 6 |
| myisam_max_sort_file_size | 2147483647 |
| myisam_recover_options | OFF |
| myisam_repair_threads | 1 |
| myisam_sort_buffer_size | 67108864 |
| myisam_stats_method | nulls_unequal |
| ndb_autoincrement_prefetch_sz | 32 |
| ndb_force_send | ON |
| ndb_use_exact_count | ON |
| ndb_use_transactions | ON |
| ndb_cache_check_time | 0 |
| ndb_connectstring | |
| net_buffer_length | 16384 |
| net_read_timeout | 30 |
| net_retry_count | 10 |
| net_write_timeout | 60 |
| new | OFF |
| old_passwords | ON |
| open_files_limit | 21010 |
| optimizer_prune_level | 1 |
| optimizer_search_depth | 62 |
| pid_file | /var/lib/mysql/aktasnet.webhatti.com.pid |
| port | 3306 |
| preload_buffer_size | 32768 |
| profiling | OFF |
| profiling_history_size | 15 |
| protocol_version | 10 |
| query_alloc_block_size | 65536 |
| query_cache_limit | 10485760 |
| query_cache_min_res_unit | 4096 |
| query_cache_size | 268435456 |
| query_cache_type | DEMAND |
| query_cache_wlock_invalidate | OFF |
| query_prealloc_size | 131072 |
| range_alloc_block_size | 2048 |
| read_buffer_size | 12578816 |
| read_only | OFF |
| read_rnd_buffer_size | 5238784 |
| relay_log_purge | ON |
| relay_log_space_limit | 0 |
| rpl_recovery_rank | 0 |
| secure_auth | OFF |
| secure_file_priv | |
| server_id | 0 |
| skip_external_locking | ON |
| skip_networking | OFF |
| skip_show_database | OFF |
| slave_compressed_protocol | OFF |
| slave_load_tmpdir | /tmp/ |
| slave_net_timeout | 3600 |
| slave_skip_errors | OFF |
| slave_transaction_retries | 10 |
| slow_launch_time | 2 |
| socket | /var/lib/mysql/mysql.sock |
| sort_buffer_size | 4194296 |
| sql_big_selects | ON |
| sql_mode | |
| sql_notes | ON |
| sql_warnings | OFF |
| ssl_ca | |
| ssl_capath | |
| ssl_cert | |
| ssl_cipher | |
| ssl_key | |
| storage_engine | MyISAM |
| sync_binlog | 0 |
| sync_frm | ON |
| system_time_zone | CST |
| table_cache | 10000 |
| table_lock_wait_timeout | 50 |
| table_type | MyISAM |
| thread_cache_size | 384 |
| thread_stack | 196608 |
| time_format | %H:%i:%s |
| time_zone | SYSTEM |
| timed_mutexes | OFF |
| tmp_table_size | 134217728 |
| tmpdir | /tmp/ |
| transaction_alloc_block_size | 8192 |
| transaction_prealloc_size | 4096 |
| tx_isolation | REPEATABLE-READ |
| updatable_views_with_limit | YES |
| version | 5.0.45-community-log |
| version_comment | MySQL Community Edition (GPL) |
| version_compile_machine | i686 |
| version_compile_os | pc-linux-gnu |
| wait_timeout | 25 |
+---------------------------------+------------------------------------------+
+-----------------------------------+------------+
| Variable_name | Value |
+-----------------------------------+------------+
| Aborted_clients | 880 |
| Aborted_connects | 0 |
| Binlog_cache_disk_use | 0 |
| Binlog_cache_use | 0 |
| Bytes_received | 287977594 |
| Bytes_sent | 231538196 |
| Com_admin_commands | 0 |
| Com_alter_db | 0 |
| Com_alter_table | 0 |
| Com_analyze | 0 |
| Com_backup_table | 0 |
| Com_begin | 0 |
| Com_call_procedure | 0 |
| Com_change_db | 87628 |
| Com_change_master | 0 |
| Com_check | 0 |
| Com_checksum | 0 |
| Com_commit | 0 |
| Com_create_db | 0 |
| Com_create_function | 0 |
| Com_create_index | 0 |
| Com_create_table | 21 |
| Com_create_user | 0 |
| Com_dealloc_sql | 0 |
| Com_delete | 6024 |
| Com_delete_multi | 4 |
| Com_do | 0 |
| Com_drop_db | 0 |
| Com_drop_function | 0 |
| Com_drop_index | 0 |
| Com_drop_table | 21 |
| Com_drop_user | 0 |
| Com_execute_sql | 0 |
| Com_flush | 0 |
| Com_grant | 0 |
| Com_ha_close | 0 |
| Com_ha_open | 0 |
| Com_ha_read | 0 |
| Com_help | 0 |
| Com_insert | 48910 |
| Com_insert_select | 21 |
| Com_kill | 0 |
| Com_load | 0 |
| Com_load_master_data | 0 |
| Com_load_master_table | 0 |
| Com_lock_tables | 908 |
| Com_optimize | 0 |
| Com_preload_keys | 0 |
| Com_prepare_sql | 0 |
| Com_purge | 0 |
| Com_purge_before_date | 0 |
| Com_rename_table | 0 |
| Com_repair | 0 |
| Com_replace | 7893 |
| Com_replace_select | 0 |
| Com_reset | 0 |
| Com_restore_table | 0 |
| Com_revoke | 0 |
| Com_revoke_all | 0 |
| Com_rollback | 0 |
| Com_savepoint | 0 |
| Com_select | 883374 |
| Com_set_option | 392 |
| Com_show_binlog_events | 0 |
| Com_show_binlogs | 0 |
| Com_show_charsets | 0 |
| Com_show_collations | 0 |
| Com_show_column_types | 0 |
| Com_show_create_db | 0 |
| Com_show_create_table | 0 |
| Com_show_databases | 0 |
| Com_show_errors | 0 |
| Com_show_fields | 340 |
| Com_show_grants | 0 |
| Com_show_innodb_status | 0 |
| Com_show_keys | 0 |
| Com_show_logs | 0 |
| Com_show_master_status | 0 |
| Com_show_ndb_status | 0 |
| Com_show_new_master | 0 |
| Com_show_open_tables | 0 |
| Com_show_privileges | 0 |
| Com_show_processlist | 26 |
| Com_show_slave_hosts | 0 |
| Com_show_slave_status | 0 |
| Com_show_status | 1 |
| Com_show_storage_engines | 0 |
| Com_show_tables | 0 |
| Com_show_triggers | 0 |
| Com_show_variables | 3 |
| Com_show_warnings | 0 |
| Com_slave_start | 0 |
| Com_slave_stop | 0 |
| Com_stmt_close | 0 |
| Com_stmt_execute | 0 |
| Com_stmt_fetch | 0 |
| Com_stmt_prepare | 0 |
| Com_stmt_reset | 0 |
| Com_stmt_send_long_data | 0 |
| Com_truncate | 21 |
| Com_unlock_tables | 908 |
| Com_update | 47182 |
| Com_update_multi | 26 |
| Com_xa_commit | 0 |
| Com_xa_end | 0 |
| Com_xa_prepare | 0 |
| Com_xa_recover | 0 |
| Com_xa_rollback | 0 |
| Com_xa_start | 0 |
| Compression | OFF |
| Connections | 85052 |
| Created_tmp_disk_tables | 765 |
| Created_tmp_files | 290 |
| Created_tmp_tables | 13709 |
| Delayed_errors | 0 |
| Delayed_insert_threads | 0 |
| Delayed_writes | 0 |
| Flush_commands | 1 |
| Handler_commit | 0 |
| Handler_delete | 6555 |
| Handler_discover | 0 |
| Handler_prepare | 0 |
| Handler_read_first | 54246 |
| Handler_read_key | 53854952 |
| Handler_read_next | 241446787 |
| Handler_read_prev | 371170 |
| Handler_read_rnd | 25947051 |
| Handler_read_rnd_next | 1340366550 |
| Handler_rollback | 0 |
| Handler_savepoint | 0 |
| Handler_savepoint_rollback | 0 |
| Handler_update | 8562441 |
| Handler_write | 3706490 |
| Innodb_buffer_pool_pages_data | 0 |
| Innodb_buffer_pool_pages_dirty | 0 |
| Innodb_buffer_pool_pages_flushed | 0 |
| Innodb_buffer_pool_pages_free | 0 |
| Innodb_buffer_pool_pages_latched | 0 |
| Innodb_buffer_pool_pages_misc | 0 |
| Innodb_buffer_pool_pages_total | 0 |
| Innodb_buffer_pool_read_ahead_rnd | 0 |
| Innodb_buffer_pool_read_ahead_seq | 0 |
| Innodb_buffer_pool_read_requests | 0 |
| Innodb_buffer_pool_reads | 0 |
| Innodb_buffer_pool_wait_free | 0 |
| Innodb_buffer_pool_write_requests | 0 |
| Innodb_data_fsyncs | 0 |
| Innodb_data_pending_fsyncs | 0 |
| Innodb_data_pending_reads | 0 |
| Innodb_data_pending_writes | 0 |
| Innodb_data_read | 0 |
| Innodb_data_reads | 0 |
| Innodb_data_writes | 0 |
| Innodb_data_written | 0 |
| Innodb_dblwr_pages_written | 0 |
| Innodb_dblwr_writes | 0 |
| Innodb_log_waits | 0 |
| Innodb_log_write_requests | 0 |
| Innodb_log_writes | 0 |
| Innodb_os_log_fsyncs | 0 |
| Innodb_os_log_pending_fsyncs | 0 |
| Innodb_os_log_pending_writes | 0 |
| Innodb_os_log_written | 0 |
| Innodb_page_size | 0 |
| Innodb_pages_created | 0 |
| Innodb_pages_read | 0 |
| Innodb_pages_written | 0 |
| Innodb_row_lock_current_waits | 0 |
| Innodb_row_lock_time | 0 |
| Innodb_row_lock_time_avg | 0 |
| Innodb_row_lock_time_max | 0 |
| Innodb_row_lock_waits | 0 |
| Innodb_rows_deleted | 0 |
| Innodb_rows_inserted | 0 |
| Innodb_rows_read | 0 |
| Innodb_rows_updated | 0 |
| Key_blocks_not_flushed | 0 |
| Key_blocks_unused | 1770715 |
| Key_blocks_used | 84967 |
| Key_read_requests | 168899608 |
| Key_reads | 85297 |
| Key_write_requests | 181407 |
| Key_writes | 160873 |
| Last_query_cost | 0.000000 |
| Max_used_connections | 45 |
| Ndb_cluster_node_id | 0 |
| Ndb_config_from_host | |
| Ndb_config_from_port | 0 |
| Ndb_number_of_data_nodes | 0 |
| Not_flushed_delayed_rows | 0 |
| Open_files | 1151 |
| Open_streams | 0 |
| Open_tables | 694 |
| Opened_tables | 787 |
| Prepared_stmt_count | 0 |
| Qcache_free_blocks | 1 |
| Qcache_free_memory | 268426424 |
| Qcache_hits | 0 |
| Qcache_inserts | 0 |
| Qcache_lowmem_prunes | 0 |
| Qcache_not_cached | 882825 |
| Qcache_queries_in_cache | 0 |
| Qcache_total_blocks | 1 |
| Questions | 1168304 |
| Rpl_status | NULL |
| Select_full_join | 17 |
| Select_full_range_join | 0 |
| Select_range | 181208 |
| Select_range_check | 0 |
| Select_scan | 62694 |
| Slave_open_temp_tables | 0 |
| Slave_retried_transactions | 0 |
| Slave_running | OFF |
| Slow_launch_threads | 0 |
| Slow_queries | 52 |
| Sort_merge_passes | 145 |
| Sort_range | 197298 |
| Sort_rows | 66273931 |
| Sort_scan | 14867 |
| Table_locks_immediate | 1466118 |
| Table_locks_waited | 5055 |
| Tc_log_max_pages_used | 0 |
| Tc_log_page_size | 0 |
| Tc_log_page_waits | 0 |
| Threads_cached | 37 |
| Threads_connected | 8 |
| Threads_created | 45 |
| Threads_running | 3 |
| Uptime | 8078 |
| Uptime_since_flush_status | 8078 |
+-----------------------------------+------------+
Uptime: 8079 Threads: 10 Questions: 1168432 Slow queries: 52 Opens: 787 Flush tables: 1 Open tables: 694 Queries per second avg: 144.626
mysqladmin Ver 8.41 Distrib 5.0.45, for pc-linux-gnu on i686
Copyright (C) 2000-2006 MySQL AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
Server version 5.0.45-community-log
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 2 hours 14 min 39 sec
Threads: 10 Questions: 1168432 Slow queries: 52 Opens: 787 Flush tables: 1 Open tables: 694 Queries per second avg: 144.626
+-------+---------------+-----------+-------------+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+-------+---------------+-----------+-------------+---------+------+-------+------------------+
| 85012 | webhatti_nick | localhost | webhatti_db | Sleep | 4 | | |
| 85034 | webhatti_nick | localhost | webhatti_db | Sleep | 2 | | |
| 85041 | root | localhost | | Query | 0 | | show processlist |
| 85051 | webhatti_nick | localhost | webhatti_db | Sleep | 1 | | |
| 85056 | webhatti_nick | localhost | webhatti_db | Sleep | 0 | | |
| 85057 | webhatti_nick | localhost | webhatti_db | Sleep | 1 | | |
| 85059 | webhatti_nick | localhost | webhatti_db | Sleep | 1 | | |
| 85060 | webhatti_nick | localhost | webhatti_db | Sleep | 0 | | |
| 85061 | webhatti_nick | localhost | webhatti_db | Sleep | 0 | | |
| 85062 | webhatti_nick | localhost | webhatti_db | Sleep | 0 | | |
+-------+---------------+-----------+-------------+---------+------+-------+------------------+


8- There are other sites on the server but they are very small and not even getting 100 unique visitors a day.


9- 1500-2000 online users. Max: 5000, Cookie Timeout: 15 Minutes

10- PhpInfo (http://www.webhatti.com/phpinfo.php)

11-


ServerLimit 1000
KeepAlive On
MaxKeepAliveRequests 1000
KeepAliveTimeout 8
MinSpareServers 10
MaxSpareServers 17
MaxClients 1000
MaxRequestsPerChild 8000
StartServers 15


12- No large files.

13-

uname -a
Linux aktasnet.webhatti.com 2.6.9-67.0.4.ELsmp #1 SMP Fri Jan 18 05:00:58 EST 2008 i686 athlon i386 GNU/Linux

ulimit -aH

core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
pending signals (-i) 1024
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
stack size (kbytes, -s) unlimited
cpu time (seconds, -t) unlimited
max user processes (-u) 274688
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
cat /proc/cpuinfo


processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212
stepping : 2
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4023.39
processor : 1
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212
stepping : 2
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4020.66
processor : 2
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212
stepping : 2
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 1
siblings : 2
core id : 0
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4020.72
processor : 3
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212
stepping : 2
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 1
siblings : 2
core id : 1
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4020.62
processor : 4
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212 HE
stepping : 3
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 2
siblings : 2
core id : 0
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4020.70
processor : 5
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212 HE
stepping : 3
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 2
siblings : 2
core id : 1
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4020.54
processor : 6
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212 HE
stepping : 3
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 3
siblings : 2
core id : 0
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4020.68
processor : 7
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 8212 HE
stepping : 3
cpu MHz : 2010.955
cache size : 1024 KB
physical id : 3
siblings : 2
core id : 1
cpu cores : 2
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht pni syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni
bogomips : 4020.74

eva2000
Tue 19th Feb '08, 5:20am
Try the following in this exact order. You can ignore any of the suggestions that you have already done.

1. Upgrade MySQL 5.0.45 or 5.0.51 if possible and then upgrade PHP to 5.2.5 or if you have problems install PHP 4.4.8 (in either case install as ISAPI module and NOT CGI)
2. Edit mysql server's /etc/my.cnf or c:\my.ini for windows and place the following mysql server settings in /etc/my.cnf and restart mysql server afterwards. Make sure to restart mysql server everytime you make changes to your my.cnf for the changes to take effect.

If mysql doesn't restart properly after my.cnf changes and you're on VPS server, make sure skip-innodb entry is removed or commented out from below my.cnf


[mysqld]
safe-show-database
old_passwords
back_log = 50
skip-innodb
max_connections = 800
key_buffer_size = 512M
myisam_sort_buffer_size = 64M
join_buffer_size = 1M
read_buffer_size = 1M
sort_buffer_size = 3M
table_cache = 5000
thread_cache_size = 384
wait_timeout = 15
connect_timeout = 10
tmp_table_size = 128M
max_heap_table_size = 128M
max_allowed_packet = 64M
net_buffer_length = 16384
max_connect_errors = 10
thread_concurrency = 16
concurrent_insert = 2
table_lock_wait_timeout = 30
read_rnd_buffer_size = 3M
bulk_insert_buffer_size = 32M
query_cache_limit = 8M
query_cache_size = 256M
query_cache_type = 1
query_prealloc_size = 262144
query_alloc_block_size = 65536
transaction_alloc_block_size = 8192
transaction_prealloc_size = 4096
default-storage-engine = MyISAM
max_write_lock_count = 16

[mysqld_safe]
nice = -10
open_files_limit = 8192

[mysqldump]
quick
max_allowed_packet = 16M

[myisamchk]
key_buffer = 384M
sort_buffer = 384M
read_buffer = 256M
write_buffer = 256M


If you get mysql server gone away error messages, then keep increasing wait_timeout value in my.cnf by 60 second increments, then restart mysql after my.cnf changes for it to take effect. Test for a few days and see if you get less or eliminate that error message. If it still occurs, then keep repeating the 60 second increment until the message goes away. Each vB forum and server will have different optimal wait_timeout values depending on your vB forum traffic patterns and server hardware specifications.

3. Remove Eaccelerator or APC Cache if they're installed (check phpinfo.php url of yours to see) and instead install Xcache v1.2.1 final release or Xcache v1.2.2 http://xcache.lighttpd.net/wiki/Release-1.2.2 which seems to be a bit faster than APC Cache - http://www.vbulletin.com/forum/showthread.php?t=213267. Xcache site http://xcache.lighttpd.net/, documentation http://trac.lighttpd.net/trac/wiki/Docs and forums http://forum.lighttpd.net/forum/4

Btw, do you really use an Xcache var.size of 256MB and use all of it ??? check your Xcache admin page to see how much available and used xcache and variable memory is actually utilised. If you have Xcache datastore enabled in vB 3.7.x config.php you really won't need more than 4-32M for datastore variables for most vB forums unless you have alot of forums and datastore cache content.

4. Upgrade to vB 3.0.17 http://www.vbulletin.com/forum/showthread.php?t=209720 if you're on vB 3.0.xx or upgrade to vB 3.5.8 http://www.vbulletin.com/forum/showthread.php?t=221903 if you're on vB 3.5.x. Upgrade to vB 3.6.8 PL2 http://www.vbulletin.com/forum/showthread.php?t=247739 if you're on vB 3.6.x

5. If you just upgraded to vB 3.5.x/3.6.x try to disable these 4 options:

Admin CP -> vBulletin Options -> Forums Home Page Options -> Display Logged in Users?

Admin CP -> vBulletin Options -> Forum Display Options (forumdisplay) -> Show Users Browsing Forums

Admin CP -> vBulletin Options -> Thread Display Options -> Show Users Browsing Thread

Admin CP -> vBulletin Options -> Message Searching Options -> Automatic Similar Thread search

6. Check phpinfo.php url to see if you have mod_gzip (Apache 1.3.x) or mod_deflate (Apache 2.x) loaded/installed (on phpinfo.php url page in browser you can do CTRL+F to bring up find prompt and type in mod_gzip or mod_deflate to quickly see). If you have either mod_gzip or mod_deflate loaded, then ensure vB admincp gzip compression is disabled since it's the same thing as mod_gzip or mod_deflate and double compression will just increase cpu loads. If you don't have mod_gzip or mod_deflate installed, then DO NOT set vB admincp gzip compression to a level higher than 1. Higher than 1, will only increase cpu loads unncessarily.

7. Your maxclients set WAAAAAAAAAAAY TOO HIGH! Edit httpd.conf values to following and restart apache

KeepAlive: On
MaxKeepAliveRequests: 90
KeepAliveTimeout: 1
MinSpareServers: 15
MaxSpareServers: 20
StartServers: 15
MaxClients: 256
MaxRequestsPerChild: 4000