ผู้เขียน หัวข้อ: วานๆพี่ๆช่วยดูให้ทีครับ ปัญหา sql ล่มบ่อย  (อ่าน 1774 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ Auto Car

  • Administrator
  • Hero Member
  • *
  • กระทู้: 5020
    • ดูรายละเอียด
    มาจากกระทู้นี้ครับ ==> You are not allowed to view links. Register or Login

   Error : 502 Bad Gateway



สมาชิกใหม่ครับ ขอฝากเนื้อฝากตัวด้วยนะครับ วันนี้มาขอคำแนะนำจากพี่ๆที่นี่ครับ เรื่องมีอยู่ว่าผมเพิ่งจะลองเปลี่ยนมาใช้ VPS ได้ไม่นาน เนื่องจากอยู่ hostgator ไม่ไหวเพราะ traffic ที่เพิ่มขึ้นจึงต้องเปลี่ยนมาใช้ VPS ตอนนี้ก็ยังงงๆทำอะไรไม่ค่อยถูก ไม่รู้ว่าต้องset my.cnf ยังไงให้เหมาะสมกับเว็บตัวเอง ก่อนหน้านี้เว็บผมมี traffic ประมาณ 15000-20000 uip/วัน PV วันละประมาณ 2 แสน หมายถึงตอนที่ใช้ hostgator นะครับ แต่พอย้ายมาใช้ VPS ของ Photon เว็บ sql ล่มบ่อยๆทำเอา traffic หายไปเยอะเลย เศร้าและเครียดเลยย ผมก็พยายามหาข้อมูลในบอร์ดนี้เกี่ยวกับวิธีการปรับแต่ง my.cnf ก็ลองปรับๆตามคำแนะนำตามกระทู้ในบอร์ดนี้ดู แต่มันก็ยังไม่นิ่งพอ ยังมีล่มเป็นช่วงๆเหมือนเคย ผมก็ไม่มีความรู้เกี่ยวกับเรื่อง server สักเท่าไหร่ ไม่รู้ว่าปัญหามันเกิดจากอะไรกันแน่ เว็บของผมเป็นระบบเขียนเองครับ เป็นระบบเว็บบอร์ดคล้าย smf Database ประมาณ 100M ตารางหลักที่มีการดึงข้อมูลบ่อยๆ มี record ประมาณ 16000 แถว คนออนไลน์พร้อมกันจะอยู่ที่ 400-500 คน แต่ปัจจุบันหลังจากที่ย้ายมาใช้ VPS ลดลงอยู่ที่ 200-300 คน ดูจาก histats นะครับ

my.cnf ที่ผม set ไว้ครับ

[mysqld]

max_connections = 500

log-slow-queries

safe-show-database

key_buffer = 128

sort_buffer_size = 4M

read_buffer_size = 2M

read_rnd_buffer_size = 4M

myisam_sort_buffer_size = 64M

join_buffer_size = 1M
« แก้ไขครั้งสุดท้าย: 13 กันยายน 2023, 16:57:14 โดย Auto Car »

ออฟไลน์ Auto Car

  • Administrator
  • Hero Member
  • *
  • กระทู้: 5020
    • ดูรายละเอียด
Re: วานๆพี่ๆช่วยดูให้ทีครับ ปัญหา sql ล่มบ่อย
« ตอบกลับ #1 เมื่อ: 13 กันยายน 2023, 07:54:23 »
   คำค้นที่น่าจะหาคำตอบได้ ตั้งค่าเวลาให้ Apache reset

ออฟไลน์ Auto Car

  • Administrator
  • Hero Member
  • *
  • กระทู้: 5020
    • ดูรายละเอียด
Re: วานๆพี่ๆช่วยดูให้ทีครับ ปัญหา sql ล่มบ่อย
« ตอบกลับ #2 เมื่อ: 13 กันยายน 2023, 07:56:11 »
You are not allowed to view links. Register or Login
บางครั้ง Service ที่เราสั่งให้ทำงานบน Server เช่น httpd ของ Apache หรือ mysql ดันหยุดทำงานไปซะดื้อๆ ซึ่งเป็นผลจาก Service error เอง หรือเกิดโหลดสูงบน Server จน Service ค้างทำให้ระบบที่เราใช้งานมีปัญหาไม่สามารถทำงานได้อย่างปกติ เราสามารถแก้ไขปัญหานี้ได้โดยใช้ Script ตรวจสอบและ Restart service ขึ้นมาใหม่ครับ
โค๊ด: You are not allowed to view links. Register or Login
#!/bin/bash
# Hostname
URL="http://google.com"

# MySQL
USER="da_admin"
PASSWD=$(grep "^passwd=" /usr/local/directadmin/conf/mysql.conf | cut -d= -f2)

# CMD
WORK="200"
NGINX=$(curl --write-out %{http_code} --silent --output /dev/null $URL)
HTTPD=$(curl --write-out %{http_code} --silent --output /dev/null $URL':8085')
mysql --user="${USER}" --password="${PASSWD}" -e exit 2>/dev/null
SQLSTATUS=`echo $?`

# Auto restart nginx
if [ $NGINX -ne $WORK ]; then
echo Nginx response code $NGINX
/etc/init.d/nginx restart
fi;

# Auto restart httpd
if [ $HTTPD -ne $WORK ]; then
echo Nginx response code $NGINX
/etc/init.d/httpd restart
fi;

if [ $SQLSTATUS -ne "0" ]; then
echo MySQL is down!
/usr/bin/killall mysqld
/etc/init.d/mysqld restart
fi;

หลังจากสร้าง Script แล้วก็สามารถนำไปใส่ให้ chmod +x แล้วนำไปใส่ crontab ตั้งเวลาให้ทำงานอัตโนมัติได้เลยครับ
« แก้ไขครั้งสุดท้าย: 13 กันยายน 2023, 07:57:44 โดย Auto Car »

ออฟไลน์ Auto Car

  • Administrator
  • Hero Member
  • *
  • กระทู้: 5020
    • ดูรายละเอียด
Re: วานๆพี่ๆช่วยดูให้ทีครับ ปัญหา sql ล่มบ่อย
« ตอบกลับ #3 เมื่อ: 13 กันยายน 2023, 08:00:18 »
วิธีตรวจสอบ PHP Version

หากคุณต้องการตรวจสอบว่า PHP Version และ PHP Function อะไรบ้างที่เปิดใช้งาน เพื่อให้ทราบว่าตรงกับความต้องการของ Script และระบบที่เราต้องการใช้งานหรือไม่ เราสามารถตรวจสอบได้ด้วย function phpinfo ตามขั้นตอนดังนี้

1. สร้างไฟล์โดยกำหนดชื่อไฟล์เป็น phpinfo.php  ไปอ่านเพิ่มเติมตามกระทู้
You are not allowed to view links. Register or Login

ออฟไลน์ Auto Car

  • Administrator
  • Hero Member
  • *
  • กระทู้: 5020
    • ดูรายละเอียด
Re: วานๆพี่ๆช่วยดูให้ทีครับ ปัญหา sql ล่มบ่อย
« ตอบกลับ #4 เมื่อ: 13 กันยายน 2023, 08:06:47 »
ช่วยจูน apache + mysql ให้หน่อยครับ server load หนักมาก
You are not allowed to view links. Register or Login

เซิฟเวอร์ทำเว็บ Social Network และบอร์ด SMF ทั้งเซิฟรันแค่เว็บเดียวครับ
Pv เฉลี่ยต่อวันประมาณ 700,000 - 800,000
ชั่วโมงที่ Peak ที่สุด 53,000 Pv

ควรจะจูน Apache กับ MySQL ยังไงดีครับ ให้มันรองรับกับจำนวนคนเข้าเว็บ
รู้สึกว่า Process มันจะค้างวันนึง 2 - 3 รอบอ่ะครับ

TOP ณ 23.13 น.
top - 23:08:28 up 3 days, 6:55, 1 user, load average: 19.17, 22.07, 19.63
Tasks: 406 total, 12 running, 393 sleeping, 0 stopped, 1 zombie
Cpu(s): 53.7%us, 9.3%sy, 0.0%ni, 33.6%id, 2.9%wa, 0.0%hi, 0.5%si, 0.0%st
Mem: 2065860k total, 1883856k used, 182004k free, 63240k buffers
Swap: 2031608k total, 52724k used, 1978884k free, 1023152k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
22533 mysql 16 0 694m 219m 2284 S 52.5 10.9 0:48.57 mysqld
22642 mysql 16 0 694m 219m 2284 R 47.3 10.9 0:33.10 mysqld
22454 mysql 16 0 694m 219m 2284 R 33.3 10.9 0:31.65 mysqld
22644 mysql 16 0 694m 219m 2284 S 33.3 10.9 0:23.36 mysqld
22587 mysql 16 0 694m 219m 2284 S 17.5 10.9 0:32.32 mysqld
22703 mysql 15 0 694m 219m 2284 S 17.5 10.9 0:34.91 mysqld
22521 mysql 16 0 694m 219m 2284 D 15.8 10.9 0:27.90 mysqld
22641 mysql 15 0 694m 219m 2284 S 15.8 10.9 0:33.41 mysqld
22695 mysql 16 0 694m 219m 2284 R 15.8 10.9 0:20.23 mysqld
22452 mysql 15 0 694m 219m 2284 S 14.0 10.9 0:30.55 mysqld
22536 mysql 16 0 694m 219m 2284 R 14.0 10.9 0:31.85 mysqld

ออฟไลน์ Auto Car

  • Administrator
  • Hero Member
  • *
  • กระทู้: 5020
    • ดูรายละเอียด
Re: วานๆพี่ๆช่วยดูให้ทีครับ ปัญหา sql ล่มบ่อย
« ตอบกลับ #5 เมื่อ: 13 กันยายน 2023, 08:15:06 »
  คำค้นสำหรับหาคำตอบ เว็บล่มประจำ Board SMF แก้ไขยังไง