server
Web Server PHP Benchmark
Submitted by wd on 4 January, 2011 - 10:05ต้องการเปลี่ยนเครื่องเซิร์ฟเวอร์ที่ใช้รัน Drupal จึงทดลองทดสอบเปรียบเทียบ Web Server และโปรแกรมที่ใช้รัน php รุ่นต่าง ๆ ไว้ดังนี้
- apache2-mpm-prefork libapache2-mod-php5
- apache2-mpm-worker libapache2-mod-fcgid php5-cgi
- lighttpd php5-cgi
- nginx php5-cgi spawn-fcgi
สมบัติ
- เครื่อง: cpu E5200 ram 2G
- os: Debian Squeeze 2.6.32-5-xen-amd64
- mysql-server: 5.1.49-3
- apache2: 2.2.16-4
- lighttpd: 1.4.28-1
- nginx: 0.7.67-3
- php-apc: 3.1.3p1-2
- สมมุติว่าลง Drupal ไว้ที่ /var/www/example.com/drupal
ส่ง SMS ผ่าน Google calendar ด้วย gcalcli
Submitted by Taniya on 21 February, 2010 - 19:53Google calendar นั้นมีบริการส่ง SMS ไปยังโทรศัพท์มือถือของผู้ใช้ เพื่อแจ้งเตือนกิจกรรม ต่าง ๆ ในปฏิทิน โดยผู้ใช้ต้องยืนยันตัวตนกับ Google ก่อน การส่ง SMS เตือนนั้นจะมีค่าโดยปริยายคือ เตือนล่วงหน้า 10 นาที
ในบทความนี้เราจะสร้าง shell script ที่ใช้ส่ง SMS โดยความต้องการพื้นฐานมีดังนี้
- ยืนยันตัวตนและหมายเลขโทรศัพท์มือถือกับ Google calendar
- ติดตั้งโปรแกรม
ntpdateเพื่อใช้ปรับเวลาเครื่องให้ตรง - ติดตั้งโปรแกรม
gcalcliซึ่งใช้ในการติดต่อกับ Google calendar
ในส่วนการยืนยันตัวตนและหมายเลขโทรศัพท์มือถือนั้น จะไม่กล่าวถึง
เริ่มด้วยติดตั้งโปรแกรม ntpdate และ gcalcli
$ sudo aptitude install ntpdate gcalcli
จากนั้นสร้าง shell script ที่ใช้ส่ง SMS
$ vi sms.sh
บันทึกติดตั้ง WebVZ บน lenny
Submitted by wd on 29 July, 2009 - 17:28WebVZ เป็นโปรแกรมจัดการ OpenVZ แบบ web based ตอนนี้ยังทำอะไรไม่ได้มาก แต่ติดตั้งไว้ก็ดี เผื่อทำงานอะไรเล็ก ๆ น้อย ๆ
ทดลองติดตั้ง Xen บน Lenny
Submitted by wd on 22 July, 2009 - 20:32Xen เป็นซอฟต์แวร์ที่ใช้ทำ virtualization ในทางทฤษฎีสามารถรัน guest OS ใด ๆ ก็ได้ โดยมีข้อแม้คือ ซีพียูต้องรองรับการทำ virtualization ด้วย แต่ถ้าซีพียูไม่รองรับ ต้องใช้กับ OS ที่ดัดแปลงให้ใช้กับ Xen เท่านั้น
ข้อดีคือ เร็วพอควร และสามารถ swap หน่วยความจำได้ ทำให้ใช้งานได้เหมือนในระบบลินุกซ์ปกติ
ข้อเสียคือ เนื่องจากแยกเคอร์เนลและฮาร์ดแวร์กันอย่างเด็ดขาด จึงทำให้ต้องการฮาร์ดแวร์มากกว่าปกติ และหากหน่วยความจำที่แบ่งให้แต่ละ guest OS ไม่พอ Xen ก็จะสลับหน่วยความจำลงดิสก์ ทำให้ระบบทำงานช้ามาก (ซึ่งจะมีผลกับทุก ๆ โพรเซสที่ยังค้างอยู่ในหน่วยความจำ คือช้าทั้งระบบ)
ทดลองติดตั้ง OpenVZ บน lenny
Submitted by wd on 22 July, 2009 - 18:49OpenVZ เป็นซอฟต์แวร์ที่ใช้ทำ virtualization ที่ใช้กับลินุกซ์เท่านั้น มีข้อแตกต่างจาก xen ตรงที่ใช้เพียงเคอร์เนลเดียว
ข้อดีคือ เร็วและพร้อมใช้
ข้อเสียคือ ไม่มีการ swap หน่วยความจำ ถ้าหน่วยความจำเต็ม โพรเซสที่มาทีหลังจะตายหมด
(แต่ก็ยังมีข้อดีในข้อเสีย คือ openvz จะบริหารการสลับหน่วยความจำระหว่าง guest OS อย่างมีประสิทธิภาพ และโพรเซสที่รันอยู่ก่อนที่หน่วยความจำจะเต็ม จะยังคงได้ความเร็วที่เกือบคงที่)
ทำแคชให้ apt ด้วย approx
Submitted by wd on 20 July, 2009 - 14:48approx เป็นซอฟต์แวร์ที่ใช้เก็บแพกเกจ deb ที่ apt จะมาเรียกไปติดตั้ง ใครมีเครื่องลินุกซ์ที่ใช้แพกเกจ apt ในหน่วยงานตั้งแต่สองเครื่องขึ้นไป ควรติดตั้งไว้ที่เครื่องเซิร์ฟเวอร์เป็นอย่างยิ่ง
จากการทดลองใช้งานพบว่า ช้ากว่า apt-proxy (ซึ่งช่วงหลังมีปัญหาตายบ่อยมาก) แต่เสถียรกว่าเยอะ ใช้พอร์ต 9999 เป็นพอร์ตเดียวกับ apt-proxy ทำให้ปรับใช้แทน apt-proxy ได้อย่างง่ายดาย
ติดตั้งสแกนเนอร์สำหรับใช้ในเครือข่าย
Submitted by wd on 24 January, 2009 - 10:27deiban: ติดตั้งสแกนเนอร์เครือข่าย
ใช้แพกเกจชุด sane ในการทำให้แสกนเนอร์ที่ติดตั้งอยู่ที่เครื่องเซิร์ฟเวอร์ สามารถใช้งานผ่านเครือข่ายได้
ทำที่เครื่องเซิร์ฟเวอร์
สมมุติว่าชื่อ server.example.com
ไอพี 192.168.1.1
ใช้งานเครือข่ายภายใน 192.168.1.0/24
และติดตั้งสแกนเนอร์ไว้แล้ว
apache2: การติดตั้งให้เรียกใช้งานเซิร์ฟเวอร์ภายในจากภายนอก
Submitted by wd on 23 January, 2009 - 08:57debian: lenny/etch
package: apache2.2 (2.2.9-10+lenny1/2.2.3-4+etch6)
สมมุติว่าเซิร์ฟเวอร์ภายนอก ชื่อ www.example.com มีการติดตั้ง apache2 ไว้แล้ว และเซิร์ฟเวอร์ภายใน ชื่อ internal.example.com มีการติดตั้ง apache2 ไว้แล้วเช่นกัน ต้องการให้ผู้ใช้ภายนอกเรียกเว็บที่ internal.example.com ได้
ทำที่เครื่องเซิร์ฟเวอร์ภายนอกอย่างเดียว โดยใช้มอดูล proxy_http
# a2enmod proxy # a2enmod proxy_http # /etc/init.d/apache2 reload
ติดตั้งชื่อไฟล์ไซต์ใน sites-available ว่า internal
# vi /etc/apache2/sites-available/internal
<VirtualHost *:80>
ServerAdmin webmaster@internal.example.com
ServerName internal.example.com
ProxyRequests Off
<Proxy *>
Order Deny,Allow
Allow from all
</Proxy>
ProxyPreserveHost On
ProxyPass / http://internal.example.com/
ProxyPassReverse / http://internal.example.com/
</VirtualHost>
เปิดใช้งาน
# a2ensite internal # /etc/init.d/apache2 reload
เสร็จแล้ว
ถ้าเราตั้งค่า DNS ของภายนอกไว้แล้ว สามารถเรียกจากภายนอกผ่าน internal.example.com ได้
all-in-one tip1: แก้ปัญหา fsck ตอนบูต
Submitted by wd on 4 July, 2008 - 00:12to webmaster: ไม่ต้อง publish ก็ได้นะครับ เพราะเป็นความรู้พื้น ๆ (ช่วงนี้ผมห่างเน็ต ค้นอะไรได้ก็ต้องรีบเขียน ไม่มีเวลาคิดมาก)
จากเรื่อง all-in-one ผมแบ่งพาร์ติชั่น /sys1 โดยผูกติดกับ / (root) ไว้ ซึ่งจะทำให้ไม่สามารถยกเลิกการเมานต์ในระหว่างการใช้งานได้
สำหรับเครื่องที่เปิดไว้ตลอด 24 ช.ม.คงไม่มีปัญหาอะไร แต่ถ้าเป็นเครื่องที่ต้องมีการปิดเปิดตามเวลา จะพบปัญหาที่ระบบไฟล์จะทำการตรวจสอบตัวเองเมื่อทำการเมานต์ครบ 30 ครั้ง ซึ่งถ้าพาร์ติชั่นไม่ใหญ่ก็คงไม่เป็นไรนัก เพราะโปรแกรม fsck ทำงานแป๊ปเดียวก็เสร็จ แต่ถ้าเป็นพาร์ติชั่นที่ใหญ่เกิน 200G ขึ้นไปจะเกิดปัญหาการบูตที่นานเกินควร
บันทึกการติดตั้งเซิร์ฟเวอร์เดเบียน etch all-in-one แบบลูกทุ่ง
Submitted by wd on 16 March, 2008 - 11:11ควรสงสัยไว้ก่อนว่า ข้อเขียนนี้ต้องมีที่ผิดพลาดแน่นอน หากจะทำตาม ควรมีความรู้เรื่องลินุกซ์พอควรที่จะแก้ปัญหาที่เกิดจากการผิดพลาดในข้อเขียนได้
จะติดตั้งเซิร์ฟเวอร์แบบ all-in-one สำหรับใช้ในหน่วยงานเล็ก ๆ โดย
|
ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้ |














