โปรโตคอลบีบอัดของ MySQL ควรใช้เมื่อ:
เงื่อนไข
- Client และ Server รองรับ zlib compression ทั้งคู่
- Client ขอการบีบอัด
ประโยชน์และข้อจำกัด
| ประโยชน์ | ข้อจำกัด |
|---|---|
| ลดขนาด Payload | เพิ่มเวลาคำนวณ (CPU) |
ปัจจัย 결정ประสิทธิภาพ
- ขนาด Result Set - ใหญ่ = ได้ประโยชน์มาก
- Network Bandwidth และ Latency
- Bandwidth น้อย = ได้ประโยชน์มาก
- จุดคอขวด (Bottleneck) จำกัดระดับบริการ
หลักการออกแบบ
เซิร์ฟเวอร์ที่เหมาะสมที่สุดควรใช้ CPU 100% ตลอดเวลา หาก CPU ว่างอยู่ = ทรัพยากรถูกว่างเปล่า
สรุป: ควรใช้เมื่อ
- Network ช้า / Bandwidth จำกัด
- ข้อมูลที่ส่งมาน่าจะใหญ่
- CPU มีเหลือ (ไม่ใช่ Bottleneck)
ไม่ควรใช้เมื่อ
- Network เร็ว (LAN, Localhost)
- CPU ใกล้เต็มแล้ว
- ข้อมูลเล็ก (Overhead ไม่คุ้มค่า)