ton1
1
ไหน ๆ ก็ผ่านเข้ามาในบอร์ดของพี่ pizzaman แล้ว ไม่อยากมาอ่านอย่างเดียว
ผมขอแชร์ประสบการณ์ด้วยก็แล้วกันครับ มีเพื่อน ๆ พี่ ๆ น้อง ๆ ชอบมาถาม
เกี่ยวกับเรื่องพวกการจูนเครื่อง ซึ่งหลัก ๆ ก็มี apache กับ MySQL
ผมจะแนะนำในการจูน apache ก่อนแล้วกันครับ ซึ่งก่อนที่จะจูน สิ่งแรกที่เราต้องทำ
คือรู้ระบบของตัวเองก่อน ว่าเครื่อง spec อะไรบ้าง CPU อะไร memory เท่าไร
ลง OS อะไรไว้ แล้วต้องการให้บริการ service อะไรเป็นพิเศษ …
ถ้าส่วนใหญ่ใช้เป็น web server ก็มาใช้ความสำคัญกับ apache เป็นพิเศษ
คือโดยค่า default แล้ว httpd.conf ที่มา จะกำหนดค่าต่าง ๆ ไว้น้อย
เพราะว่าเค้าไม่ได้รู้ว่าเครื่อง server เราแรงเท่าไร เค้าจะทำมาสำหรับ space ต่ำ ๆ
ก็สามาใช้งานได้ ที่นี้เราจะจูนอะไรบ้างดีล่ะ แต่ละค่าคืออะไร ผมจะอธิบายดังต่อไปนี้นะครับ
ที่ file /usr/local/apache/conf/httpd.conf (บาง OS ก็อยู่ที่อื่นนะครับ)
ค่าเริ่มต้นที่แนะนำมีดังนี้ครับ (เครื่องเสปค P4 3.0 GHz Memory 1.0 GB)
Timeout 30 # ค่าเดิม ๆ จะเป็น 300 ครับ ปรับลงมาแค่ 30 ก็พอครับกันพวก flood
KeepAlive Off # เว็บที่จำนวนคนเข้าเยอะ ๆ ควร off ไว้ครับ
MaxKeepAliveRequests 1024 # ค่าเดิมน่าจะเป็น 100 ปรับมาสัก 1024 ครับ
KeepAliveTimeout 10 # เดิม 15 ปรับลงมา 10 ก็พอครับ
ค่าเดิม
#StartServers
ดีเลยครับกำลังอยากจะปรับอยู่ จะลองเอาไปใช้ดูนะครับ ขอบคุณมากครับ
ICOM
3
อยากจะแซวอ่ะน่ะ แต่ฝากไว้ก่อน
system
4
ตรง ServerLimit 1024 หากเป็น FreeBSD ต้องแก้ไข httpd.h ใน souce apachhe แล้ว re-compile ใหม่ และต้องไปแก้ที่ kernel ด้วยให้เปิดการเปิดไฟล์ hard_limit พอกันครับ
หมายเหคุ
ServerLimit หากปรับไว้มากๆ เวลาทำงานหนัก จะลำบากครับ ต้องดูกำลัง cpu & ram ว่ามากพอไหน ให้ดีต้องคำนวนด้วยมือนิดหน่อย
Restart ไม่ขึ้นเลยครับ
เลยต้องเอาของเก่ามาใส่แทนถึงจะ restart ได้
ไม่รู้ว่าเป็นที่อะไรครับ
ใช้ CentOS 4.2 final
ton1
7
[quote author=siamwebsolution.com link=topic=5008.msg41887#msg41887 date=1165999161]
Restart ไม่ขึ้นเลยครับ
เลยต้องเอาของเก่ามาใส่แทนถึงจะ restart ได้
ไม่รู้ว่าเป็นที่อะไรครับ
ใช้ CentOS 4.2 final
pook
8
ตามมาบวกให้ท่านต้นครับ เอาความรู้ความสามารถ
มาร่วมกันพัฒนาครับ เยี่ยมจริงๆ ครับ
ปุ๊ก
[quote author=212cafe.com link=topic=5008.msg41889#msg41889 date=1165999392]
เอา ServerLimit
system
10
ServerLimit หากจะทำต้องแต่ง kernel เพิ่มนะครับ และแนะนำทำกับพวก xeon หรือพวก multi core ไม่งั้น cpu รับภาระไม่ไหวครับ
error เพราะไม่ผ่านเรื่อง kernel config
ton1
11
ไม่เกี่ยวกับ kernel ครับ เกี่ยวกับ source ตอนเอา apache มา compile
ค่าปกติมันจะอยู่ที่ 256 ครับ สามารถแก้ แล้ว compile ใหม่ได้ครับ
system
12
ใน Linux ไม่ต้องครับ แต่ FreeBSD มันจะกำหนดไว้ไม่เกิน 512 ครับ (สำหรับ FreeBSD 4.x) 6.x ไม่ต้องแล้ว
ลองทำดูก่อน…แล้ว restart ก็จะทราบการ process ไปเอง มันจะฟ้อง error ออกมาตอนเราเช็ค config test
ton1
13
ขอบคุณพี่ devone ครับ เกิดไม่ทัน 4.xx
system
14
[quote author=212cafe.com link=topic=5008.msg41899#msg41899 date=1166000313]
ขอบคุณพี่ devone ครับ เกิดไม่ทัน 4.xx
[quote author=212cafe.com link=topic=5008.msg41865#msg41865 date=1165996645]
ปรับเพิ่มขึ้นเป็น
ServerLimit
ton1
16
[quote author=sailomsaengdaed link=topic=5008.msg41902#msg41902 date=1166001935]
ของผม ปรับเป็น 2048 นึกว่าน้อยแล้ว แต่ไหงมาเยอะกว่าพวกทำ hosting กันอีกเนี้ย
ของผมเมื่อก่อนใช้ redhat ตอนเรียน 4 > 7 > 7.3 |ตอนทำงาน 8 > fedora Core 1> 2 > gentoo
แต่โทษทียังใช้ apache 1.3 อยู่ครับ
เคยใช้ 2.0 แล้วเจอปัญหาเกี่ยวกับ header ของพวก Office ครับ ไปอ่านใน apache.org ก็มีคนเจอปัญหาเดียวกัน แล้วเค้าสรุปว่ามันจะมีปัญหากับพวก office
log ของ apache เฉพาะตัว access วันนึงก็ประมาณ 19-20 M ได้ครับ
mr.tong
19
แล้วไม่คิดจะเผยแพร่สู่ สาธารณะ หน่อยเหรอครับสูตรคำนวณ
ton1
20
พี่ devone มีสูตรคำนวณมะครับ ผมไม่มีสูตรตายตัวอ่าครับ ค่อย ๆ ปรับทีละนิดเอา
จนมันรู้สึกได้ด้วยความรู้สึกว่าดีกว่าเดิม แล้วก็เอาโปรแกรม httpd benchmark วัดเอาครับ
ถึงสุดที่พอใจ ก็สรุปว่าใช้ได้ละ