사용량이 많은 시간대에 Ubuntu LAMP 서버가 바쁨

사용량이 많은 시간대에 Ubuntu LAMP 서버가 바쁨

저는 가상 클라우드 호스팅(CityCloud)에서 LAMP가 포함된 Ubuntu 14 서버를 실행하고 있습니다.

서버는 일반적으로 0.5초 미만의 응답 시간으로 매우 잘 작동합니다. 그러나 문제는 주로 월요일~수요일/목요일과 같은 피크 시간대에 시작되며 응답 시간은 약 7~8초 이상입니다. stackoverflow의 @drew010 덕분에 작업자 MPM 및 php-fpm에 전달하여 이 시간을 거의 절반으로 줄였습니다.

이제 바쁜 시간 동안 평균 로드 시간의 남은 3초를 제거하기 위해 할 수 있는 마지막 조정이 있는지 확인하고 싶습니다.

Google Analytics에 따르면 이 웹사이트는 월간 약 500만 페이지 조회수를 기록하고 있으며 피크 시간대에는 시간당 약 1200~1300만 페이지 조회수를 기록하고 있습니다.

내 설정은 다음과 같습니다.

  • 우분투 14.04.3 LTS
  • PHP 버전 5.5.9, FPM/FastCGI
  • CPU 코어 4개
  • 8램
  • 1Gbps 대역폭 및 1TB 전송/월로 제한됩니다.
  • 피크 시간 동안 < 6% CPU 사용량
  • 사용된 메모리 < 2GB
  • 피크 시간대에는 ~2M txbps
  • 정적 콘텐츠는 "액세스 + 1개월" 만료 헤더가 있는 별도의 하위 도메인(동일 컴퓨터)에서 제공됩니다.
  • 동일한 머신에서 실행되는 MySQL.
  • MySQL 쿼리는 속도가 빠르고 문제가 되지 않는 것으로 측정되었습니다.

분명히 4코어/8RAM은 과도합니다. 내 의도는 성능이 좋으면 최대 2코어/4RAM으로 돌아가는 것입니다.

다음은 피크 시간 동안의 netstat 출력입니다.

$ netstat -ant | awk '{print $6}' | 정렬 | 유니크 -c | 정렬 -n
      3 종료
      5 들어봐
      8 FIN_WAIT1
     69 마지막_ACK
     80 SYN_RECV
    117 설립
    147 FIN_WAIT2
   1028 시간_대기

일부 서버 정보:

파일: /etc/apache2/mods-enabled/mpm_worker.conf
  13: 시작서버 2
  14: 최소 예비 스레드 25
  15: MaxSpareThreads 75
  16: 스레드 제한 64
  17: ThreadsPerChild 25
  18: MaxRequestWorkers 150

일부 커널 옵션 값:

/proc/sys/net/core/somaxconn: 128
/proc/sys/net/core/netdev_max_backlog: 1000
/proc/sys/net/ipv4/tcp_max_syn_backlog: 256
/proc/sys/net/ipv4/ip_local_port_range: 32768 61000

MySQL "전역 상태 표시":

중단된_클라이언트 7
중단_연결 14
Binlog_cache_disk_use 0
Binlog_cache_use 0
Binlog_stmt_cache_disk_use 0
Binlog_stmt_cache_use 0
바이트_수신 7324492238
Bytes_sent 33143229342
Com_admin_commands 0
Com_sign_to_keycache 0
Com_alter_db 0
Com_alter_db_upgrade 0
Com_alter_event 0
Com_alter_function 0
Com_alter_procedure 0
Com_alter_server 0
Com_alter_table 2
Com_alter_tablespace 0
Com_분석 0
Com_begin 0
Com_binlog 0
Com_call_procedure 0
Com_change_db 1277679
Com_change_master 0
컴_체크 0
Com_checksum 0
커밋 0
Com_create_db 0
Com_create_event 0
Com_create_function 0
Com_create_index 0
Com_create_procedure 0
Com_create_server 0
Com_create_table 0
Com_create_trigger 0
Com_create_udf 0
Com_create_user 0
Com_create_view 0
Com_dealloc_sql 0
Com_delete 19
Com_delete_multi 0
Com_do 0
Com_drop_db 0
Com_drop_event 0
Com_drop_function 0
Com_drop_index 0
Com_drop_procedure 0
Com_drop_server 0
Com_drop_table 0
Com_drop_trigger 0
Com_drop_user 0
Com_drop_view 0
Com_empty_query 0
Com_execute_sql 0
Com_플러시 0
컴_그랜트 0
Com_ha_close 0
Com_ha_open 0
Com_ha_read 0
Com_help 0
Com_insert 1301
Com_insert_select 0
Com_install_plugin 0
컴_킬 0
컴_로드 0
Com_lock_tables 18
Com_optimize 1
Com_preload_keys 0
Com_prepare_sql 0
Com_purge 0
Com_purge_before_date 0
Com_release_savepoint 0
Com_rename_table 0
Com_rename_user 0
컴_수리 0
Com_replace 7
Com_replace_select 0
Com_reset 0
Com_resignal 0
Com_revoke 0
Com_revoke_all 0
Com_rollback 0
Com_rollback_to_savepoint 0
Com_savepoint 0
Com_select 8939751
Com_set_option 2555998
컴_시그널 0
Com_show_authors 0
Com_show_binlog_events 0
Com_show_binlogs 94
Com_show_charsets 0
Com_show_collations 0
Com_show_contributors 0
Com_show_create_db 18
Com_show_create_event 0
Com_show_create_func 0
Com_show_create_proc 0
Com_show_create_table 356
Com_show_create_trigger 0
Com_show_databases 28
Com_show_engine_logs 0
Com_show_engine_mutex 0
Com_show_engine_status 0
Com_show_events 5
Com_show_errors 0
Com_show_fields 381
Com_show_function_status 5
Com_show_grants 5
Com_show_keys 40
Com_show_master_status 43
Com_show_open_tables 0
Com_show_plugins 0
Com_show_privileges 0
Com_show_procedure_status 5
Com_show_processlist 1099
Com_show_profile 0
Com_show_profiles 0
Com_show_relaylog_events 0
Com_show_slave_hosts 0
Com_show_slave_status 1118
Com_show_status 1120
Com_show_storage_engines 0
Com_show_table_status 366
Com_show_tables 77
Com_show_triggers 324
Com_show_variables 1135
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_reprepare 0
Com_stmt_reset 0
Com_stmt_send_long_data 0
Com_truncate 0
Com_uninstall_plugin 0
Com_unlock_tables 18
Com_update 41612
Com_update_multi 0
Com_xa_commit 0
Com_xa_end 0
Com_xa_prepare 0
Com_xa_recover 0
Com_xa_rollback 0
Com_xa_start 0
압축 꺼짐
연결 1277451
Created_tmp_disk_tables 731
Created_tmp_files 9
Created_tmp_tables 3602
Delayed_errors 0
Delayed_insert_threads 0
Delayed_writes 0
Flush_commands 1
핸들러_커밋 284
Handler_delete 19
Handler_discover 0
Handler_prepare 0
Handler_read_first 485
Handler_read_key 7814753
Handler_read_last 48790
Handler_read_next 55898210
Handler_read_prev 457247
Handler_read_rnd 223213
Handler_read_rnd_next 4231962515
Handler_rollback 0
Handler_savepoint 0
Handler_savepoint_rollback 0
Handler_update 40888
Handler_write 377375
Innodb_buffer_pool_pages_data 202
Innodb_buffer_pool_bytes_data 3309568
Innodb_buffer_pool_pages_dirty 0
Innodb_buffer_pool_bytes_dirty 0
Innodb_buffer_pool_pages_flushed 37
Innodb_buffer_pool_pages_free 7989
Innodb_buffer_pool_pages_misc 0
Innodb_buffer_pool_pages_total 8191
Innodb_buffer_pool_read_ahead_rnd 0
Innodb_buffer_pool_read_ahead 0
Innodb_buffer_pool_read_ahead_evicted 0
Innodb_buffer_pool_read_requests 2817
Innodb_buffer_pool_reads 196
Innodb_buffer_pool_wait_free 0
Innodb_buffer_pool_write_requests 86
Innodb_data_fsyncs 39
Innodb_data_pending_fsyncs 0
Innodb_data_pending_reads 0
Innodb_data_pending_writes 0
Innodb_data_read 5394432
Innodb_data_reads 206
Innodb_data_writes 67
Innodb_data_write 1235456
Innodb_dblwr_pages_write 37
Innodb_dblwr_writes 9
Innodb_have_atomic_buildins ON
Innodb_log_waits 0
Innodb_log_write_requests 35
Innodb_log_writes 10
Innodb_os_log_fsyncs 21
Innodb_os_log_pending_fsyncs 0
Innodb_os_log_pending_writes 0
Innodb_os_log_write 17408
Innodb_page_size 16384
Innodb_pages_created 7
Innodb_pages_read 195
Innodb_pages_write 37
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 59
Innodb_rows_updated 7
Innodb_truncated_status_writes 0
Key_blocks_not_flush 0
Key_blocks_unused 10770
Key_blocks_used 2626
Key_read_requests 167086090
Key_reads 2430
Key_write_requests 376494
Key_writes 303134
Last_query_cost 0
Max_used_connections 8
Not_flushed_delayed_rows 0
Open_files 141
Open_streams 0
Open_table_definitions 73
Open_tables 137
Opened_files 5062
Opened_table_definitions 80
Opened_tables 150
Performance_schema_cond_classes_lost 0
Performance_schema_cond_instances_lost 0
Performance_schema_file_classes_lost 0
Performance_schema_file_handles_lost 0
Performance_schema_file_instances_lost 0
Performance_schema_locker_lost 0
Performance_schema_mutex_classes_lost 0
Performance_schema_mutex_instances_lost 0
Performance_schema_rwlock_classes_lost 0
Performance_schema_rwlock_instances_lost 0
Performance_schema_table_handles_lost 0
Performance_schema_table_instances_lost 0
Performance_schema_thread_classes_lost 0
Performance_schema_thread_instances_lost 0
준비된_stmt_count 0
Qcache_free_blocks 2242
Qcache_free_memory 7441152
Qcache_히트 68078488
Qcache_inserts 8868017
Qcache_lowmem_prunes 4451717
Qcache_not_cached 71091
Qcache_queries_in_cache 6797
Qcache_total_blocks 16056
쿼리 82178544
질문 82178543
Rpl_status AUTH_MASTER
Select_full_join 0
Select_full_range_join 0
Select_range 2041371
Select_range_check 0
Select_scan 1151738
Slave_heartbeat_기간 0
Slave_open_temp_tables 0
Slave_received_heartbeats 0
Slave_retried_transactions 0
Slave_running 꺼짐
Slow_launch_threads 0
Slow_queries 0
Sort_merge_passes 5
Sort_range 878229
Sort_rows 236531
Sort_scan 869
Ssl_accept_renegotiates 0
SSL_수락 0
Ssl_callback_cache_hits 0
SSL_cipher  
SSL_cipher_list
SSL_client_connects 0
Ssl_connect_renegotiate 0
Ssl_ctx_verify_깊이 0
SSL_ctx_verify_mode 0
SSL_default_timeout 0
SSL_finished_accepts 0
SSL_finished_connects 0
Ssl_session_cache_hits 0
Ssl_session_cache_misses 0
Ssl_session_cache_mode 없음
Ssl_session_cache_overflows 0
SSL_session_cache_size 0
Ssl_session_cache_timeouts 0
SSL_sessions_reused 0
Ssl_used_session_cache_entries 0
SSL_verify_깊이 0
SSL_verify_mode 0
SSL_버전
Table_locks_immediate 9116984
Table_locks_waited 178
Tc_log_max_pages_used 0
Tc_log_page_size 0
Tc_log_page_waits 0
스레드_캐시 6
Threads_connected 2
스레드_생성 8
스레드_실행 1
가동 시간 423398
Uptime_since_flush_status 423398

iostat피크 시간대에 실행:

$ iostat -xdk 1
장치: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz wait r_await w_await svctm %util
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 4.00 0.00 4.00 4.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 2.00 0.00 8.00 8.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 17.00 0.00 96.00 11.29 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 34.00 0.00 3.00 0.00 152.00 101.33 0.00 1.33 0.00 1.33 1.33 0.40
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 1.00 0.00 12.00 24.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 20.00 0.00 152.00 15.20 0.02 1.20 0.00 1.20 0.60 1.20
vda 0.00 44.00 0.00 2.00 0.00 188.00 188.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 2.00 0.00 8.00 8.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 4.00 0.00 4.00 4.00 0.40
vda 0.00 74.00 0.00 146.00 0.00 908.00 12.44 0.30 2.08 0.00 2.08 0.05 0.80
vda 0.00 46.00 0.00 3.00 0.00 200.00 133.33 0.00 1.33 0.00 1.33 1.33 0.40
vda 0.00 0.00 0.00 4.00 0.00 16.00 8.00 0.00 1.00 0.00 1.00 1.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 20.00 0.00 232.00 23.20 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 41.00 0.00 2.00 0.00 176.00 176.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 17.82 0.00 118.81 13.33 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 42.00 0.00 4.00 0.00 188.00 94.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 12.00 0.00 60.00 10.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 39.00 0.00 2.00 0.00 168.00 168.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 16.00 0.00 76.00 9.50 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 32.00 0.00 2.00 0.00 140.00 140.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 18.00 0.00 100.00 11.11 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 30.00 0.00 2.00 0.00 132.00 132.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 12.00 0.00 48.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 37.00 0.00 3.00 0.00 164.00 109.33 0.01 2.67 0.00 2.67 2.67 0.80
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 48.00 0.00 130.00 0.00 744.00 11.45 0.24 1.88 0.00 1.88 0.06 0.80
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 35.00 0.00 4.00 0.00 160.00 80.00 0.00 1.00 0.00 1.00 1.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 19.00 0.00 172.00 18.11 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 4.00 0.00 4.00 4.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 39.00 0.00 2.00 0.00 168.00 168.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 25.00 0.00 184.00 14.72 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 48.00 0.00 2.00 0.00 204.00 204.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 18.00 0.00 104.00 11.56 0.00 0.22 0.00 0.22 0.22 0.40
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.02 24.00 0.00 24.00 24.00 2.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 39.00 0.00 4.00 0.00 176.00 88.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 1.00 0.00 4.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 17.00 0.00 100.00 11.76 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 38.00 0.00 3.00 0.00 168.00 112.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 2.00 0.00 8.00 8.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 16.00 0.00 100.00 12.50 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 40.00 0.00 2.00 0.00 172.00 172.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 10.00 0.00 64.00 12.80 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 34.00 0.00 2.00 0.00 144.00 144.00 0.00 2.00 0.00 2.00 2.00 0.40
vda 0.00 0.00 0.00 2.00 0.00 12.00 12.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 55.00 0.00 117.00 0.00 732.00 12.51 0.28 2.43 0.00 2.43 0.10 1.20
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

도움을 주시면 감사하겠습니다! :-)

답변1

을 늘려야 합니다 /proc/sys/net/core/somaxconn. 기본값은 128입니다. 요청 급증을 지원하려면 값을 크게 늘려야 합니다.

관련 정보