ฉันพยายามที่จะเข้าใจว่าทำไมฉันถึงได้รับอัตรา TPS ต่ำในสภาพแวดล้อมการพัฒนาของฉัน
ฉันใช้สิ่งต่อไปนี้:
- Mac OS X Mavericks
- VirtualBox
- Ubuntu 14.04
- Nginx
- -FPM PHP5
- Silex
ฉันไม่ได้ปรับแต่งการตั้งค่ามากนักเพียงแค่ nginx เพื่อเปิดใช้งานส่วนควบคุมด้านหน้า silex
เมื่อใช้ JMeter ฉันกำลังทดสอบว่าคำขอนี้มีต่อสภาพแวดล้อมเท่าไหร่และสิ่งที่ฉันเห็นอยู่คือ ~ 14 ธุรกรรมต่อวินาที จุดสิ้นสุดที่ฉันกดปุ่มนั้นเป็นคำทักทายง่าย ๆ ในโลกสวัสดีที่ตอบสนองโดยใช้ hardcoded json
ตอนแรกฉันคิดว่า nginx หรือ php ไม่ยอมรับการเชื่อมต่อพร้อมกัน แต่ดูเหมือนว่าจะเปิดใช้งานตามค่าเริ่มต้น
ถ้าฉันรันหนึ่งเธรดเดียวแต่ละคำร้องขอใช้เวลา 70ms หรือมากกว่านั้นถ้าฉันรัน 10 เธรดแต่ละอันจะใช้เวลาใกล้กับวินาทีและต่อไปเรื่อย ๆ ไม่ว่าจะมีกี่เธรดก็ตามปริมาณงานคือ 13/14 tps ขณะที่ฉันรันสิ่งนี้top
แสดงให้เห็นว่ากระบวนการ 5 php5-fpm ทั้งหมดใช้เวลาประมาณ 20% ของ CPU ในแต่ละกระบวนการ
ฉันกำลังทำอะไรผิดพลาดหรือคาดหวังเช่นนี้