3
PostgreSQL ความพร้อมใช้งาน / ความสามารถในการปรับขนาดสูงโดยใช้ HAProxy และ PGBouncer
ฉันมีเซิร์ฟเวอร์ PostgreSQL หลายเครื่องสำหรับเว็บแอปพลิเคชัน โดยทั่วไปแล้วจะเป็นทาสหลักและทาสหลายคนในโหมดฮอตสแตนบาย (การจำลองการส่งกระแสข้อมูลแบบอะซิงโครนัส) ฉันใช้ PGBouncer สำหรับการรวมการเชื่อมต่อ: หนึ่งอินสแตนซ์ที่ติดตั้งบนเซิร์ฟเวอร์ PG แต่ละตัว (พอร์ต 6432) เชื่อมต่อกับฐานข้อมูลบน localhost ฉันใช้โหมดกลุ่มธุรกรรม ในการโหลดการเชื่อมต่อแบบอ่านอย่างเดียวของฉันกับทาสฉันใช้ HAProxy (v1.5) กับ conf มากกว่าหรือน้อยกว่าเช่นนี้ listen pgsql_pool 0.0.0.0:10001 mode tcp option pgsql-check user ha balance roundrobin server master 10.0.0.1:6432 check backup server slave1 10.0.0.2:6432 check server slave2 10.0.0.3:6432 check server slave3 10.0.0.4:6432 check …