เมนู

แสดงโพสต์

ส่วนนี้ให้คุณดูโพสต์ทั้งหมดของสมาชิกท่านนี้ (เฉพาะโพสต์ในส่วนที่คุณมีสิทธิ์เข้าถึง)

เมนู แสดงโพสต์

ข้อความ - ronin2000

#1
อ้างถึงจาก: WebSnow ใน 28 มิถุนายน 2012, 13:17:05
โอ้ท่านปรับค่าเยอะมากอย่างกับเว็บคนเข้าวันละ 4-5 แสนกว่าคนต่อวัน
ตอนนี้ยังค้างอยู่หรือเปล่า ? ถ้าใช่ช่วยพิมพ์คำสั่งนี้หน่อย
ถ้าไม่ค้างยังไม่ต้องพิมพ์มา

1) ps -ax
แล้วเอาผลลัพธ์มาโพส

2)ps aux | grep http | grep -v "(root|grep)" | wc -l
แล้วเอาผลลัพธ์มาโพส
3) netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -n
แล้วเอาผลลัพธ์มาโพส

4) mysqladmin process
แล้วเอาผลลัพธ์มาโพส

5) โพสลงหน่อย my.cnf

6) top
แล้วเอาผลลัพธ์มาโพส โพสแบบเต็มเลย

7) apache
KeepAliveTimeout เท่ากับเท่าไหร่

8 ) โพส ผลของ mode status
จะดูว่าคนเข้าหน้าไหน ดูว่าจะเกิด ddos ไหม

9) vmstat -sa

10)เว็บนี้ใช้ script อะไร ? เช่น Wordpress, VB,SMF


แก้ปํญหาเฉพาะหน้าที่เจอแบบนี้ให้ restart apache เพื่อให้คนเข้าเว้บได้
หลังจากนั้นค่อยหาวิธี tune server ใหม่


2)ps aux | grep http | grep -v "(root|grep)" | wc -l
1004

3) netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -n
      1 101.108.0.178
      1 101.51.19.143
      1 1.0.154.17
      1 1.0.186.207
      1 110.164.179.2
      1 110.164.64.161
      1 110.164.72.19
      1 110.49.235.46
      1 110.49.249.19
      1 110.77.229.81
      1 113.53.187.58
      1 115.31.182.50
      1 115.87.122.129
      1 118.173.33.196
      1 118.174.43.93
      1 118.175.210.58
      1 119.46.176.222
      1 122.154.22.34
      1 122.155.42.116
      1 124.120.38.191
      1 124.120.86.184
      1 124.121.249.50
      1 125.26.123.225
      1 125.26.157.96
      1 125.26.167.197
      1 125.26.50.191
      1 125.27.69.66
      1 157.55.18.25
      1 171.97.171.128
      1 180.180.8.237
      1 180.183.152.123
      1 180.183.93.140
      1 180.76.5.186
      1 180.76.5.189
      1 180.76.6.35
      1 183.88.8.207
      1 183.89.115.114
      1 188.61.99.12
      1 202.137.143.37
      1 202.143.191.97
      1 202.29.20.19
      1 202.29.60.225
      1 202.29.9.12
      1 202.58.99.182
      1 203.130.145.98
      1 203.144.217.230
      1 203.151.118.70
      1 203.158.207.55
      1 203.247.140.249
      1 213.55.176.69
      1 223.206.161.17
      1 223.206.19.96
      1 27.55.15.54
      1 49.49.159.144
      1 58.137.161.231
      1 58.8.247.175
      1 58.8.54.236
      1 58.9.115.23
      1 58.9.199.224
      1 58.97.79.196
      1 61.47.23.201
      2 118.174.133.126
      2 202.29.39.1
      2 202.91.18.201
      2 203.110.67.98
      2 36.37.236.238
      2 78.30.89.233
      3 101.108.36.202
      3 118.174.23.237
      3 125.24.127.214
      3 175.38.112.220
      3 223.204.76.230
      4 58.8.221.192
      6 203.172.250.185
      6 37.220.8.106
      8 84.27.115.184
      9 127.0.0.1
     13 118.172.84.45
     13 202.43.34.240
     14 101.109.39.86
    128

4) mysqladmin process
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'

5) โพสลงหน่อย my.cnf
key_buffer_size=512M
max_allowed_packet=30M
table_cache=1024
sort_buffer_size=32M
read_buffer_size=16M
read_rnd_buffer_size=32M
myisam_max_sort_file_size=1G
myisam_sort_buffer_size=64M
thread_cache_size=256
query_cache_size=256M
query_cache_limit=256M
join_buffer_size=1024K
tmp_table_size=512M
max_heap_table_size=64M
thread_concurrency=8

set-variable = max_user_connections=2000
max_connections=5000
max_connect_errors=3000
wait_timeout=100
interactive_timeout=60
connect_timeout=60

skip-innodb

[mysqldump]
quick
max_allowed_packet=30M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer=256M
sort_buffer_size=256M
read_buffer=2M
write_buffer=2M

[myisamchk]
key_buffer=256M
sort_buffer_size=256M
read_buffer=2M
write_buffer=2M

[mysqlhotcopy]
interactive-timeout

6) top
top - 14:15:18 up 16 days,  3:09,  1 user,  load average: 5.43, 6.18, 6.72
Tasks: 1330 total,   1 running, 1288 sleeping,   0 stopped,  41 zombie
Cpu0  :  0.6%us,  0.6%sy,  0.0%ni, 47.8%id, 51.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  2.5%us,  1.9%sy,  0.0%ni, 72.6%id, 22.9%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  3.2%us,  2.6%sy,  0.0%ni,  0.0%id, 94.2%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  : 12.2%us,  0.6%sy,  0.0%ni, 37.2%id, 49.4%wa,  0.0%hi,  0.6%si,  0.0%st
Cpu4  :  3.2%us,  0.6%sy,  0.0%ni, 72.0%id, 24.2%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu5  :  4.4%us,  0.6%sy,  0.0%ni, 63.3%id, 31.6%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  : 26.1%us, 12.7%sy,  0.0%ni,  2.5%id, 58.0%wa,  0.0%hi,  0.6%si,  0.0%st
Cpu7  : 22.9%us,  3.2%sy,  0.0%ni, 14.0%id, 51.6%wa,  0.6%hi,  7.6%si,  0.0%st
Mem:  12290040k total, 12223392k used,    66648k free,    48964k buffers
Swap: 10482404k total,  1694908k used,  8787496k free,  2758104k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                               
22919 mysql     15   0 2076m 818m 4132 S 31.5  6.8 424:39.22 mysqld                                                                 
20524 apache    16   0  304m  24m 4680 S  8.4  0.2   0:02.42 httpd                                                                 
23543 apache    16   0  297m  19m 3392 S  7.1  0.2   0:00.26 httpd                                                                 
21538 apache    15   0  299m  21m 3936 S  6.4  0.2   0:01.67 httpd                                                                 
21630 apache    16   0  299m  19m 4580 S  4.5  0.2   0:02.02 httpd                                                                 
20644 apache    15   0  303m  24m 4680 S  3.9  0.2   0:02.28 httpd                                                                 
  446 root      10  -5     0    0    0 S  2.6  0.0   8:50.16 kswapd0                                                               
19244 apache    15   0  298m  21m 4008 S  2.6  0.2   0:03.68 httpd                                                                 
23868 ronin     15   0 13684 2096  844 R  2.6  0.0   0:01.07 top                                                                   
21504 apache    15   0  296m  19m 3960 S  1.9  0.2   0:02.20 httpd                                                                 
21612 apache    15   0  296m  18m 4576 S  1.9  0.2   0:01.73 httpd                                                                 
22677 apache    15   0  297m  20m 3712 S  1.9  0.2   0:00.47 httpd                                                                 
22828 apache    16   0  298m  19m 4564 S  1.9  0.2   0:00.67 httpd                                                                 
22877 apache    16   0  295m  17m 3652 S  1.9  0.1   0:00.56 httpd                                                                 
19238 apache    15   0  303m  24m 4716 S  1.3  0.2   0:05.36 httpd                                                                 
20542 apache    15   0  298m  20m 4724 S  1.3  0.2   0:02.92 httpd                                                                 
21778 apache    16   0  298m  20m 4624 S  1.3  0.2   0:01.02 httpd                                                                 
22822 apache    15   0  299m  21m 3676 S  1.3  0.2   0:00.92 httpd                                                                 
23571 apache    15   0  296m  18m 3628 S  1.3  0.2   0:00.31 httpd                                                                 
23680 apache    15   0  295m  17m 3272 S  1.3  0.1   0:00.07 httpd                                                                 
23867 apache    15   0  294m  16m 3212 S  1.3  0.1   0:00.04 httpd                                                                 
23913 apache    15   0  294m  16m 2976 S  1.3  0.1   0:00.02 httpd                                                                 
19246 apache    15   0  310m  31m 4636 S  0.6  0.3   0:03.62 httpd                                                                 
19271 apache    15   0  307m  28m 4676 S  0.6  0.2   0:04.00 httpd                                                                 
19909 apache    15   0  298m  20m 3704 S  0.6  0.2   0:02.75 httpd                                                                 

7) apache
KeepAliveTimeout 15

8 ) โพส ผลของ mode status
- เข้าไม่ได้ครับ ตอนเกิดปัญหา

9) vmstat -sa
     12290040  total memory
      9755304  used memory
      8511364  active memory
       248320  inactive memory
      2534736  free memory
         9484  buffer memory
       892372  swap cache
     10482404  total swap
        76328  used swap
     10406076  free swap
    117120047 non-nice user cpu ticks
        50639 nice user cpu ticks
     41448265 system cpu ticks
    913359037 idle cpu ticks
     33437461 IO-wait cpu ticks
      1022471 IRQ cpu ticks
      8485068 softirq cpu ticks
            0 stolen cpu ticks
   2046740138 pages paged in
   1738905024 pages paged out
      1582470 pages swapped in
      3163173 pages swapped out
   1201920708 interrupts
   3462042787 CPU context switches
   1339473929 boot time
      1793259 forks

10)เว็บนี้ใช้ script อะไร ? เช่น Wordpress, VB,SMF
- script เป็น php เขียนเองครับ
#2
อ้างถึงจาก: tdelphi ใน 28 มิถุนายน 2012, 02:49:11
ดูจากคำสั่ง top จะเห็นว่า Tasks: 1314 total,
แต่ config ใส่เยอะเกินไป เช่น

ServerLimit      4096
MaxClients       4096

แนะนำให้ลดเหลือ 2048 ก็พอครับ

และ

max_connections=5000  ลดเหลือ 2048 เช่นกัน

ใส่เยอะเกินไป จะเปลืองแรมครับ และทำให้ระบบช้าลง  ยกเว้นในกรณีที่ connection เยอะจิงๆ ก็ใส่ค่าที่ใกล้เคียงของจริงครับ

ส่วนใน httpd.conf  แนะนำให้ enable mod_status ไว้ดู server-status จะได้เห็นปัญหาได้กว้างขึ้น
หรือมี mrtg , munin ดูประกอบด้วยยิ่งดี




เครื่องผม enable mod_status อยู่แล้วครับ แต่ตอนที server มีปัญหาไม่สามารถเข้าไปดูได้ครับ
ส่วน httpd.conf , my.cnf ตอนแรกผมตั้งค่าเป็น 2048 พอเกิดปัญหาผมเลยเพิ่มเป็น 4096 ครับ
ปัญหาตอนนี้คือ httpd มันค้าง  พอ  process เกิน 1000 ครับ ยังไงช่วยแนะนำด้วยครับ
#3
อ้างถึงจาก: iLhay ใน 27 มิถุนายน 2012, 23:04:40
iostat -ktx 2

ถ้าใช้ไม่ได้

สั่ง yum install sysstat ครับ แล้สั่งข้างบนไป

ได้ผลดังนี้ครับ
Time: 11:08:19 PM
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           8.75    0.81    3.62    2.25    0.00   84.56

Device:         rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0.50     0.00  2.00  0.00    10.00     0.00    10.00     0.03   14.50   7.50   1.50
sda1              0.50     0.00  2.00  0.00    10.00     0.00    10.00     0.03   14.50   7.50   1.50
sda2              0.00     0.00  0.00  0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdb               0.00    52.00  1.50 15.00     6.00   268.00    33.21     0.04    2.64   1.24   2.05
sdc               0.00    52.00  0.00 15.00     0.00   268.00    35.73     0.02    1.47   0.17   0.25
sdd               0.00   174.00  6.00 22.50    38.00   786.00    57.82     0.28    9.65   3.72  10.60
sde               0.00   174.00  0.00 22.00     0.00   784.00    71.27     0.20    6.09   3.68   8.10
sdf               0.00     0.00  0.00  0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdf1              0.00     0.00  0.00  0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
dm-0              0.00     0.00  1.50 67.00     6.00   268.00     8.00     0.20    2.98   0.31   2.10
dm-1              0.00     0.00  1.50 67.00     6.00   268.00     8.00     0.20    2.98   0.31   2.10
dm-2              0.00     0.00  6.00 196.50    38.00   786.00     8.14     2.53   12.13   0.81  16.45
dm-3              0.00     0.00  6.00 196.50    38.00   786.00     8.14     2.53   12.13   0.81  16.45

#4
อ้างถึงจาก: zidit ใน 27 มิถุนายน 2012, 22:42:03
เข้าไม่ได้นี่เปนลักษณะไหนครับ หมุนค้างนานๆ หรือว่าตัดไปเลย

ได้ลง apache_status รึเปล่าครับ เช็คจากตรงนั้นก็ได้ว่า คนเข้าจนเต็ม maxclients รึเปล่า

ลักษณะหมุนค้างนานๆ ครับ ตอนที่มีปัญหาไม่สามารถเข้า apache_status ได้ครับ
#5
สวัสดีครับ

server ผมมี spec คราวๆ ดังนี้
Kernel and CPU Linux 2.6.18-308.4.1.el5 on x86_64
Processor information Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz, 8 cores
Operating system CentOS Linux 5.7
memory 10 GB
ตั้งอยู่ที่ CAT Bandwidth Unlimited

ผม TOP ดู มีรายละเอียดดังนี้

top - 22:02:57 up 15 days, 10:57,  1 user,  load average: 1.14, 1.11, 0.92
Tasks: 1314 total,   4 running, 1268 sleeping,   0 stopped,  42 zombie
Cpu0  :  3.2%us,  3.8%sy,  0.0%ni, 93.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  2.5%us,  2.5%sy,  0.0%ni, 93.7%id,  1.3%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  5.1%us,  1.9%sy,  0.0%ni, 84.8%id,  8.2%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  : 11.4%us,  1.9%sy,  0.0%ni, 82.3%id,  3.8%wa,  0.0%hi,  0.6%si,  0.0%st
Cpu4  :  2.5%us,  2.5%sy,  0.0%ni, 95.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu5  :  5.1%us,  1.3%sy,  0.0%ni, 93.6%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  : 23.6%us, 14.0%sy,  0.0%ni, 61.1%id,  1.3%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu7  : 28.0%us,  4.5%sy,  0.0%ni, 51.0%id,  8.9%wa,  0.6%hi,  7.0%si,  0.0%st
Mem:  12290040k total, 12057560k used,   232480k free,   119332k buffers
Swap: 10482404k total,    21252k used, 10461152k free,  5973204k cached

ผมดู process apache ได้ผลดังนี้
[root@t1 ~]$ ps aux | grep http | grep -v "(root|grep)" | wc -l
1019

httpd.conf มีค่าดังนี้
<IfModule prefork.c>
StartServers 64
MinSpareServers 128
MaxSpareServers 256
ServerLimit      4096
MaxClients       4096
MaxRequestsPerChild 2048
</IfModule>

my.cnf มีค่าดังนี้
max_connections=5000

ส่วน script php ใน web เขียนเอง ไม่ได้ใช้ script สำเร็จรูป
ตอน server มีปัญหา restart apache ก็กลับมาใช้ได้ปกติ แต่เมื่อไร top ดูแล้วมี process เกิน 1,300 process แล้วดู process apache เกิน 1,000 process จะเข้า web ไม่ได้ ผมไม่แน่ใจว่าผม config ตรงไหนผิด รบกวนพี่ๆ แนะนำด้วยครับ

ขอบคุณมากครับ
#6
ดันๆๆๆๆ
#7
เคยมีแบบนี้เกิดกับเพื่อนผม แต่นานแล้วนะครับ ให้ประเมิน หลังจากนั้นก็ไม่ซื้อ เสียเงินค่าประเมินป่าวๆ