[root@magicdb01 pgsql8]# uptime
17:02:27 up 153 days, 10:59, 3 users, load average: 3.60, 3.53, 2.63
[root@magicdb01 pgsql8]# uptime
17:04:46 up 153 days, 11:02, 3 users, load average: 3.18, 3.43, 2.72
[root@magicdb01 pgsql8]# vmstat 1
procs memory swap io system cpu
r b swpd free buff cache si so bi bo in cs us sy wa id
1 0 1988 631488 154500 847524 1 1 1 3 4 2 1 1 1 2
0 0 1988 631484 154500 847524 0 0 0 0 119 68 3 7 0 90
0 0 1988 631016 154500 847532 0 0 0 368 214 497 3 2 3 92
0 0 1988 630784 154500 847540 0 0 8 0 157 333 1 4 0 95
0 0 1988 630776 154508 847540 0 0 0 428 145 88 5 8 11 76
0 0 1988 630732 154508 847556 0 0 0 328 155 116 1 0 3 96
0 0 1988 630732 154508 847556 0 0 0 0 108 48 1 4 0 95
1 0 1988 630728 154508 847556 0 0 0 332 153 181 3 9 1 87
0 0 1988 630728 154508 847556 0 0 0 0 106 37 0 1 0 99
0 0 1988 630716 154520 847556 0 0 0 340 128 78 1 3 8 87
1 0 1988 630612 154520 847556 0 0 0 0 111 37 2 6 0 92
0 0 1988 630584 154520 847556 0 0 0 0 137 126 2 4 0 94
0 0 1988 630504 154520 847580 0 0 0 732 287 420 2 3 14 81
1 0 1988 630504 154520 847580 0 0 0 0 109 28 1 4 0 95
0 0 1988 630376 154524 847580 0 0 0 272 127 65 3 5 8 84
0 0 1988 630256 154524 847580 0 0 0 0 126 81 1 3 0 96
0 0 1988 630256 154524 847580 0 0 0 0 107 36 1 3 0 96
0 0 1988 630248 154524 847580 0 0 0 252 148 119 3 6 2 89
1 0 1988 630248 154524 847580 0 0 0 0 114 39 1 3 0 97
0 0 1988 630248 154528 847576 0 0 0 272 128 74 1 3 8 87
0 0 1988 630248 154528 847576 0 0 0 0 113 56 3 6 0 92
1 0 1988 630248 154532 847576 0 0 0 0 168 224 3 0 0 97
1 0 1988 628988 154536 847584 0 0 8 0 160 941 4 4 0 91
0 0 1988 627508 154540 847584 0 0 0 416 191 116 2 7 6 85
0 0 1988 626256 154552 847584 0 0 0 380 170 136 0 0 17 82
2 0 1988 626120 154552 847584 0 0 0 0 116 43 1 3 0 96
[root@magicdb01 pgsql8]# ps aux | grep postgres | wc -l
169
PostgreSQL와 모니터링 툴만 돌아가고 있습니다.
웹서버를 재시작해서 프로세스가 169개인데 많을대는 450~500개를 유지합니다.
웹서버 2대, 미들웨어 1대, 파일서버 1대가 물려있고 미들웨어에서는 약 4~8개, 파일서버에서는 1~2개, 나머지는 웹서버 2대의 세션들입니다.
auto_vacuum을 꺼놓은 상태이고 PGDATA 의 크기는 2기가 정도 됩니다. vacuum한 지가 꽤 되었는데 그 때문일까요?
postgresql.conf 파일에서 기본값이 아닌 것들 입니다.
max_connections = 1000
shared_buffers = 10000 # min 16, at least max_connections*2, 8KB each
work_mem = 8192 # min 64, size in KB
maintenance_work_mem = 65536 # min 1024, size in KB
vacuum_cost_delay = 200 # 0-1000 milliseconds
vacuum_cost_page_hit = 6 # 0-10000 credits
wal_buffers = 8 # min 4, 8KB each
checkpoint_segments = 16 # in logfile segments, min 1, 16MB each
checkpoint_timeout = 1800 # range 30-3600, in seconds
checkpoint_warning = 60 # 0 is off, in seconds
effective_cache_size = 100000 # typically 8KB each
random_page_cost = 3.5 # units are one sequential page fetch cost
log_destination = 'syslog' # Valid values are combinations of stderr,
syslog_facility = 'LOCAL0'
syslog_ident = 'postgres'
stats_row_level = true
lc_messages = 'C' # locale for system error message strings
lc_monetary = 'C' # locale for monetary formatting
lc_numeric = 'C' # locale for number formatting
lc_time = 'C' # locale for time formatting
버전입니다.
MagicHome=# SELECT version();
version
----------------------------------------------------------------------------------------------------------
PostgreSQL 8.0.1 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-49)
(1건 있음)
최근 갑자기 load average가 3이상을 유지하고 있습니다. 원래는 0.10~0.20 수준이었고 그 이하일때도 많습니다. 세션이 많아져서 그런걸까요? 최근 신규 사용자가 늘어서 데이터의 삽입과 갱신이 잦아지긴 했습니다만 크게 문제가 될 정도로 늘어난건 아닙니다..
아.. 이거참;; 문제입니다. 도움 좀 주십시오~~
|