กลับไปหน้าบทความ
แชร์
03 มีนาคม 2566 • Caelux
Scalability vs. Growth: สร้างแบ็กเอนด์อย่างไรไม่ให้ล่มเมื่อผู้ใช้เพิ่มเป็นสองเท่าในคืนเดียว
การเติบโตสร้างแรงกดดัน Scalability คือการแปลงแรงกดดันให้เป็นความเสถียรด้วย queue, caching และ bottleneck ที่ชัดเจน
เมื่อผู้ใช้เพิ่มเป็นสองเท่า แบ็กเอนด์ไม่ได้พังทุกจุดพร้อมกัน แต่จะพังที่คอขวด: database, external API และ workflow แบบ synchronous
เราเริ่มจากการวัด: เวลาหายไปไหน endpoint ไหนร้อนที่สุด และข้อมูลไหนแพงที่สุด แล้วเลือกเครื่องมือที่เหมาะ: caching, indexing และ batching
งานแบบ async คือพลังสำคัญ Queue ช่วยย้ายงานหนักออกจาก request path ทำให้ UI ไว และรับ spike ได้โดยไม่ล่ม
เรายังออกแบบ backpressure: rate limit, timeout และ graceful degradation ระบบต้องปกป้องตัวเองเมื่อโหลดเกิน
Scalability ไม่ใช่ฟีเจอร์เดียว แต่มันคือชุดนิสัย: วัด ปรับ และควบคุมความซับซ้อน