เรากำลังใช้ Consul v1.11.1 KV เพื่อเก็บข้อมูลบางส่วนที่อ่านเป็นส่วนใหญ่ï¼ประมาณ 50 ไบต์ต่อคีย์) ฉันกำลังทำการทดสอบประสิทธิภาพของ Consul เมื่อเร็วๆ นี้ก่อนอื่นฉันใช้เซิร์ฟเวอร์เดียว (8CPU Cores, 2.4GHz; 16GB RAM; 300G SSD)
wrk -t8 -d30 -c200 http:8500/v1/kv/aa กำลังทดสอบ 30 วินาที @ http://10.190.4.251:8500/v1/kv/aa
8 เธรดและ 200 การเชื่อมต่อ
สถิติเธรด ค่าเฉลี่ย Stdev สูงสุด +/- Stdev
เวลาแฝง 2.86ms 2.99ms 55.02ms 88.33%
คำขอ/วินาที 10.71k 2.00k 19.79k 69.19%
2565410 คำขอใน 30.09 วินาที อ่าน 0.93GB
คำขอ/วินาที: 85251.41
ถ่ายโอน/วินาที: 31.79MB ซีพียูสูงสุด 700%
จากนั้นฉันสร้างคลัสเตอร์ที่มีเซิร์ฟเวอร์การกำหนดค่าเดียวกันอื่นๆ (8CPU Cores, 2.4GHz; 16GB RAM; 300G SSD) และสร้าง haproxy สำหรับการทำโหลดบาลานซ์ ป้อนคำอธิบายรูปภาพที่นี่
ขณะนี้ซีพียูสูงสุด 300% ต่อเซิร์ฟเวอร์ ผลลัพธ์
วิ่งทดสอบ 2m @ http://10.190.5.152:8999/v1/kv/aa 8 เธรดและ 200 การเชื่อมต่อ Thread Stats Avg Stdev Max +/- Stdev Latency 5.38ms 1.72ms 212.79ms 94.57% Req/Sec 4.68k 388.44 7.27k 84.26% 4474792 คำขอใน 2.00m, 1.63GB อ่าน คำขอ/วินาที: 37260.15 โอน/วินาที : 13.89MB
ฉันเพิ่มการเชื่อมต่อ แต่พบการตอบสนองที่ไม่ใช่ 2xx
วิ่งทดสอบ 2m @ http://10.190.5.152:8999/v1/kv/aa 8 เธรดและ 250 การเชื่อมต่อ Thread Stats Avg Stdev Max +/- Stdev Latency 6.64ms 1.95ms 213.80ms 93.03% Req/Sec 4.70k 466.78 10.65k 82.20% 4485786 คำขอใน 2.00m, 1.63GB อ่านข้อผิดพลาดของซ็อกเก็ต: เชื่อมต่อ 0 อ่าน 129 , เขียน 0, หมดเวลา 0 การตอบกลับที่ไม่ใช่ 2xx หรือ 3xx: 64 คำขอ/วินาที: 37353.78
ประสิทธิภาพที่สูงกว่าของเซิร์ฟเวอร์เดียวมากกว่าคลัสเตอร์ ฉันไม่รู้ว่าทำไม? ฉันใช้มันผิดหรือเปล่า?