Sticky session là gì

Nội dung bài viết

  1. Application Load Balancer
  2. Network Load Balancer
  3. Gateway Load Balancer
  4. Sticky Session
  5. Cross-Zone Load Balancing
  • Classic Load Balancer - 2009 - CLB
  • Application Load Balancer - 2016 - ALB
  • Network Load Balancer - 2017 - NLB
  • Getway Load Balancer - 2020 - GLB Chúng ta nên sử dụng các phiên bản mới nhất để được hỗ trợ nhiều tính năng nhất có thể. Classic Load Balancer hiện tại không còn được sử dụng nhiều.

Application Load Balancer

  • Giải pháp này hoạt động ở tầng ừng dụng [layer 7], phù hợp nhất để cân bằng lưu lượng HTTP và HTTPS
  • Load balancing đến nhiều HTTP ứng dụng qua nhiều machine
  • Hỗ trợ redirect HTTP/HTTPs
  • Hỗ trợ route đến nhiều target group
    • VD: sample/users và sample/pots sẽ gọi đến 2 target group khác nhau
  • ALB rất phù hợp với ứng dụng micro service
  • Chúng ta sẽ truy cập vào ALB trông qua 1 fixed hostname [xxx.region.elb.amazon.com]

Network Load Balancer

Hoạt động ở layer 4 dùng để forward TCP&UDP traffic đến instance của bạn. có thể xử lý hàng triệu request trong 1 giây nhưng vẫn đảm bảo độ trễ thấp [~100ms, so với ALB ~400ms].

  • NLB có 1 static IP mỗi AZ
  • Chú ý: NLB không support free tier nên chú ý khi sử dụng.

Gateway Load Balancer

  • GLB cho phép bạn triển khai, mở rộng, quản lý các ứng dụng 3th party network [Firewall...]
  • Hoak động ở Layer 3 [Network layer]
  • Sử dụng GENEVE protocol trên port 6081

Sticky Session

Sticky Session là một tính năng trong một hệ thống cân bằng tải cho website. Khi 1 user gửi request lần đầu tiên đến được Load Banlancer chỉ định 1 server xử lý request đó, đến lần request sau, cũng sẽ vẫn là server đó xử lý request. Tính năng này chủ yếu được sử dụng để đảm bảo một in-proc session nào đó sẽ không bị mất bởi các yêu cầu cho session được route đến các máy chủ khác nhau.

  • Option này chỉ hoạt động với Classic Load Banlancers & Application Load Balancers
  • Để tính năng này hoạt động, Client phải hỗ trợ cookies

Cross-Zone Load Balancing

Như hình vẽ chúng ta có thể hình dung được Cross-Zone Load Balancing là gì, ở bổi cảnh này chúng ta có 1 AZ là A và B, trong AZ A có 4 server và B có 4 server. AWS ELB cung cấp 2 option bât/tắt Cross-Zone Load Balancing [enable/disable]

  • Khi enable: traffic sẽ được chia đều cho các target khác nhau, mỗi server có 10%
  • Khi disable: một bên là 8.33% còn 1 bên nhận 12.5% traffic
    Application Load Balancer
    • Luôn bật [không thể tắt option này đi]
    • Không bị tính phí inter AZ
    Network Load Balancer
    • Mặc định sẽ disabled
    • Nếu enable lên AWS sẽ tính phí inter AZ của bạn
    Classic Load Balancer
    • Mặc định sẽ disabled
    • Nếu enable, không bị tính phí inter AZ
Bài trước
VIẾT BỞI

Phan Văn Đức

Cuộc sống có quyền đẩy bạn ngã nhưng ngồi đó than khóc hay đứng dậy và tiếp tục là quyền của bạn.
Donate cho team

Video liên quan

Chủ Đề