ลาที LigHTTPD + FastCGI สวัสดี Apache + Mongrel


setting ของ server ที่เราใช้กับ GotoKnow.org ในช่วงที่ผ่านมาคือ LigHTTPD (อ่านว่า Lighty) โดยทำงานผ่าน FastCGI เพื่อติดต่อกับ Rails application ของเราที่ชื่อ KnowledgeVolution ครับ

ปรากฎว่าใน setting นี้ แม้จะทำงานได้รวดเร็ว แต่ก็ไม่ค่อย stable เท่าไหร่ เพราะ communication ระหว่าง components นั้นหลุดระหว่างกันบ่อยเวลา peak ขึ้นสูงๆ ครับ

ในช่วงวันหยุดที่ผ่านมา เราจึงได้เปลี่ยนเป็น Apache + mod_proxy_balancer + Mongrel ครับ

ที่ BlogFish มี diagram อธิบายสิ่งที่เราได้เปลี่ยนแปลงไว้ชัดเจนดีทีเดียวครับ 

ปรากฎว่าใน setting นี้ดูเหมือนจะทำงานได้ช้าลงและกินหน่วยความจำมากขึ้น แต่ก็เหมือนว่าจะ stable ดี ส่วนจะ stable แค่ไหนก็คงต้องดูไปอีกหลายวันครับ

ใน setting ใหม่นี้จะช่วยให้เรา scale ออกไปเป็น cluster ได้ง่ายขึ้นด้วย เพราะเราต้อง support อีกหลาย sites ที่เราวางแผนไว้

ยังมีเรื่องต้องทำอีกเยอะแล้วผมค่อยเล่าเพิ่มเติมครับ

หมายเลขบันทึก: 83398เขียนเมื่อ 12 มีนาคม 2007 10:28 น. ()แก้ไขเมื่อ 8 มิถุนายน 2012 22:03 น. ()สัญญาอนุญาต: จำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (13)

กราบเรียนท่านอาจารย์ ดร.ธวัชชัย คู่ จัน

 มาเยียมยามให้กำลังใจครับ ทางเทคนิคไม่ค่อยจะเข้าใจ แต่รู้ใจว่า "ทีมให้ใจในการพัฒนา อย่างท่มเท" พวกเราจึงได้ฮาเฮ เข้ามาร่วม ลปรร ครับ

ขอบคุณอาจารย์หมอ JJ ที่กรุณามาเยี่ยมครับ

สมมุติว่ามีหลาย site ใน server เดียว ถ้ามีบาง site อยาก restart ก็ restart แต่ Mongrel ก็พอ? ไม่ต้อง restart Apache?

(มีเพื่อนที่อยากเปิด Rails web hosting แต่ก็เหมือนหาๆท่าอยู่)  

ผมกะว่าจะเช่า TextDrive หาประสบการณ์ด้วย ดูว่าเขาทำไง :-P

เรื่องเทคนิคไม่ค่อยรุ้เรื่องหรอกค่ะ  แต่ขอเป็นกำลังใจให้อาจารย์และทีมงานนะคะอาจารย์ ^__*

ตอบพี่วีร์ครับ: ออฟฟิศผมใช้การสร้าง cap(istrano) command เอาครับ เช่น cap app_restart มันก็จะไป restart ในส่วนของ mongrel ให้ โดยการใช้ ssh นั่นแหละ

สำหรับการทำงานจริงๆ เวลาที่เราต้องแก้ไข code ที่จำเป็นต้อง restart เช่นแก้ model หรือ route หรือ plugin ตัว capistrano จะช่วยได้เยอะเลยครับ มันจะไป restart ตัว mongrel ให้ทุกครั้งที่เรา deploy ไป(หรือจะไม่ให้ restart ก็ได้) อันนี้ขึ้นอยู่กับ hosting ครับ แต่ที่เคยใช้มา จะเป็นแบบนี้หมด

สำหรับ  host  ที่เคยใช้ จะมี
http://railsmachine.com/
http://www.slicehost.com/
แล้วก็ host ที่ config เอง โดยใช้สูตรจากที่ link ที่อาจารย์ธวัชชัยเอามาให้ดูนั่นแหละครับ

สำหรับ textdrive ผมก็คิดว่าน่าจะเหมือนๆ กัน

ตอบตามประสบการณ์อันน้อยนิดครับ ฝั่ง hosting นี่ เจ้านายผมจัดการหมด ผมแค่สั่ง cap deploy แค่นี้เอง

ผมอ่านบทความจบแร้ว ดู  ประวัติคนเขียน
โอ้วไม่ อาจารย์มหาลัยเราเอง
สวัสดีครับ ผม comsci ปี 3
dreamhost ก็มีให้ใช้นะ RoR

use mongrel for commercial purpose but when one connection cause the load to the server, other users will be affected.

I am looking forward to designing a new system for a new server which will handle much more load than the current server.  

If you have already done some research, may be we can share krub. I can have my site for your pilot test.

 Thanks,

 

BTW: I am CoE, PSU. 

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท