ไอ้เจ้า Cloudclone เนี้ย คือ library ภาษา Ruby ที่ใช้สร้างระบบสำหรับทำ load test เว็บของเราง่ายๆ ฟรีๆ บน Heroku
ลองจินตนาการว่าเราสามารถมี server 20-30 เครื่อง ที่พร้อมจะยิง request พร้อมๆ กัน อย่างต่อเนื่องไปหา web application server ที่เรากำลังทำการพัฒนาอยู่ ได้โดยใช้เวลาเตรียมตัว ตั้งค่าเครื่องไม่ถึงช่ัวโมง!!!
Source code ของ Cloundclone อยู่ที่ github เลยครับ
วิธีการใช้งาน
ติดตั้ง
gem install cloudclone
จากนั้นใช้ irb หรือ สร้าง ruby file เพื่อรัน code ต่อไปนี้
import
require ‘cloudclone’
สร้าง cloudclone object
cloudclone = Cloudclone::Client.new(“heroku_username”, “heroku_password”)
สร้าง cloudclone group โดยระบุจำนวนที่ต้องการไปด้วย (แรกๆ อย่าเพิ่งใส่เยอะนะครับ มันจะนาน)
cloud_group = cloudclone.create(“group_name”, 3)
รอซักพักนึง ขึ้นอยู่กับว่าสร้างกี่ตัว เมื่อเสร็จ ก็พร้อมใช้งานทันที
cloud_group.request(“http://www.yourserver.com”)
หลังจากนี้ server ทุกตัวจะทำการยิง request ไปที่ url ที่เราระบุพร้อมๆ กัน
สิ่งที่ต้องการก่อนการใช้งาน
- Ruby
- Heroku account ที่ทำการติดตั้ง ssh key แล้ว
- git version control
ขอให้สนุกนะครับ 🙂
Update 18 มีนาคม 2555: หยุดทำต่อเพราะค้นพบว่า
- ใช้การสร้าง Heroku app ขึ้นมาใช้ไม่กี่ชั่วโมง แล้ว set dyno เป็น 20+ ก็ทำงานแทนได้ และฟรีเหมือนกัน
- http://blitz.io/ ก็มีฟรีให้ใช้ตั้ง 60 วิ กับ 250 concurrent user ก็เยอะกว่าของเราแล้ว