เนื่องจากต้องทำ Load Test แล้วหา JMeter Sampler ที่ใช้กับ AMF ง่าย ๆ ไม่ได้ (ส่วนใหญ่ต้องตั้ง HTTP Server มาดัก request แล้วเอาไป replay ซ้ำ) เลยเขียนเองซะเลย เสียเวลาในการทำงานต่าง ๆ ไปอาทิตย์เต็ม ๆ แต่ก็คงคุ้มกับการทำมั้ง
ใช้งาน
- ดาวโหลด amf.jar ไปวางไว้ที่ directory /lib/ext ของ JMeter แล้วก็ขยายเอา jar ออกมา
- ดาวโหลด flex-messaging ไปวางไว้ที่ directory /lib ของ JMeter แล้วขยายเอา jar ออกมา ไฟล์นี้สามารถดาวโหลดจากเว็บ Adobe ได้ตรง ๆ ที่ project
BlazeDS เพียงแต่ จะไม่สามารถใช้กับ GraniteDS ได้เพราะมีบาง attribute ที่ไม่เหมือนกัน - เปิด JMeter ขึ้นมา แล้วเพิ่ม Sampler ต่าง ๆ จะได้เหมือนภาพด้านล่าง
- Address คือที่อยู่ของ AMF Servlet
- Service คือชื่อของ class ที่ประกาศใน services-config.xml
- Method คือชื่อ method ในคลาส
- Arguments คือ Arguments ใน method เรียงตามลำดับจากบนลงล่าง
- รันแล้วดูผลลัพธ์ใน View Results Tree
สิ่งที่ยังไม่ได้ทำ
- ใส่ Argument เป็น Object เพื่อส่งไปยัง Server
- Arguments จริง ๆ ไม่จำเป็นต้องใส่ชื่อ เพราะขึ้นอยู่กับลำดับชั้น คิดว่าจะเอาออกในภายหลัง
- ทดลองกับ GraniteDS เท่านั้น ยังไม่ได้ลองกับ Adobe BlazeDS และ Adobe Live Cycle
สำหรับคนที่จะเอาไปทำต่อก็ clone source ได้จาก AMF Project อยากได้คนช่วยทำเยอะ ๆ เพราะคิดว่ามีบั๊กอยู่พอสมควร ส่วน source ที่แก้ใน Flex Messaging จะเอามาแปะในภายหลัง ว่าแก้อะไรไปบ้าง
เพิ่มเติม : ได้รับเสียงบ่นพอสมควรว่าเอาไปใช้ไม่ได้ เลยเอามาเพิ่มไว้หน่อย เผื่อเอาไปดูแล้วแก้ไขกันต่อไป