TCP Load Balancing

การทำโหลดบาลานซ์ช่วยให้มั่นใจได้ถึงความพร้อมใช้งานของระบบสูงผ่านการกระจายปริมาณงานในหลายองค์ประกอบ การใช้หลายองค์ประกอบร่วมกับการทำโหลดบาลานซ์แทนที่จะเป็นส่วนประกอบเดียวอาจเพิ่มความน่าเชื่อถือผ่านการทำซ้ำได้ Ruk-Com ใช้ NGINX สำหรับการทำโหลดบาลานซ์สองประเภท: TCP และ HTTP

ลูกค้า Ruk-Com Cloud สามารถใช้ TCP เพื่อทำการปรับสมดุล (balancing) คำร้องขอไปยังฐานข้อมูล, เมลเซิร์ฟเวอร์และแอปพลิเคชันที่กระจายได้อื่น ๆ ด้วยเน็ตเวิร์คซัพพอร์ต นอกจากนี้ยังสามารถใช้ TCP แทน HTTP ได้ หากต้องการการปรับสมดุลให้เร็วขึ้น ในกรณีนี้คุณต้องทราบว่าความรวดเร็วนี้เกิดขึ้นได้จากการละเว้นขั้นตอนการจัดการคำขอต่าง ๆ

คอมโพเนนต์ TCP load balancing ได้รับการร้องขอการเชื่อมต่อจากไคลเอนต์แอปพลิเคชันผ่านเน็ตเวิร์คซ็อกเก็ต คอมโพเนนต์นี้จะตัดสินใจว่าโหนดใดใน Env จะได้รับการร้องขอ สำหรับการแจกจ่ายคำขอนี้ Ruk-Com ได้ใช้ Round Robin Algorithm

เมื่อสร้างการเชื่อมต่อแล้วคำขอจากไคลเอนต์แอปพลิเคชันจะดำเนินต่อไปผ่านการเชื่อมต่อเดียวกันกับโหนดที่เลือก แอปพลิเคชันไม่สามารถระบุได้ว่าจะทำการเลือก instance ใด

การเชื่อมต่อที่มีอยู่จะหายไปก็ต่อเมื่อเกิดปัญหาขึ้น เช่น เครือข่ายล้มเหลวชั่วคราวหรืออะไรที่เป็นในลักษณะนั้น ในครั้งถัดไปที่ได้รับการร้องขอการเชื่อมต่อใหม่จะถูกสร้างขึ้น การเชื่อมต่อนี้สามารถไปที่ instance ใดก็ได้ใน Environment

ในการทำ TCP balancing ที่ Ruk-Com Cloud environment ให้ทำตามคำแนะนำต่อไปนี้:

1. สร้าง Env ด้วยแอปพลิเคชันเซิร์ฟเวอร์ 2 ตัวขึ้นไป (ตัวอย่างเช่น Tomcat) ในกรณีนี้ NGINX จะถูกเพิ่มโดยอัตโนมัติ โปรดทราบว่าคุณต้องเปิด Public IP สำหรับโหนด NGINX

2. คลิก Config สำหรับ NGINX ใน Env ของคุณ

3. ในแท็บที่เปิดอยู่ให้ไปที่ tcpmaps > mappings.xml และระบุพอร์ตส่วนของ frontend และbackend บันทึก (Save) การเปลี่ยนแปลง

Frontend คือพอร์ตที่ผู้ใช้จะเชื่อมต่อ
Backend คือพอร์ตที่ balancer จะส่งต่อคำขอ

4. รีสตาร์ท (Restart) โหนด NGINX

และนั่นคือทั้งหมด ตอนนี้ Env ของคุณใช้ TCP balancing สำหรับแอปพลิเคชันเซิร์ฟเวอร์แล้ว