Cân bằng tải - Load Balancing là gì và tại sao phải dùng cân bằng tải?

19/10/2019

Cân bằng tải là một phương pháp phân phối khối lượng tải trên nhiều máy tính hoặc một cụm máy tính để có thể sử dụng tối ưu các nguồn lực, tối đa hóa thông lượng, giảm thời gian đáp ứng và tránh tình trạng quá tải trên máy chủ. 

Một cơ sở hạ tầng website không có cân bằng tải sẽ trông như thế này:

Load balancing – cân bằng tải là một thành phần đóng vai trò quan trọng trong các cơ sở hạ tầng mạng ngày nay. Nó được dùng để cải thiện hiệu suất và độ tin cậy của các website, ứng dụng, cơ sở dữ liệu và các dịch vụ khác bằng phương thức phân phối khối lượng công việc ra nhiều cloud server cùng lúc.

Trong ví dụ này, người dùng kết nối trực tiếp đến web server (tại yourdomain.com). Nếu web server duy nhất này gặp vấn đề, người dùng sẽ không thể truy cập vào website được nữa. Ngoài ra, nếu có nhiều người dùng cố gắng truy cập vào server cùng một lúc thì sẽ xảy ra quá tải, khiến thời gian tải website chậm đi hoặc kết nối bị gián đoạn.

Điều này có thể khắc phục bằng cách thêm vào hệ thống cân bằng tải và ít nhất một web server hỗ trợ bổ sung trên backend. Thông thường, tất cả các nội dung mà người dùng nhận được là như nhau bất kể họ đang kết nối với server nào.

Diagram 01: Load Balancers / Top-to-bottom

Trong ví dụ ở trên, hệ thống cân bằng tải sẽ chuyển tiếp yêu cầu của người dùng đến một server phụ trợ và đáp ứng trực tiếp yêu cầu đó. Vị trí nếu trục trặc có thể gây ảnh hưởng cho cả hệ thống bây giờ chính là vị trí cân bằng tải. Điều này có thể khắc phục bằng cách đưa vào một hệ thống cân bằng tải thứ hai, nhưng trước khi nói về điều này hãy tìm hiểu cách thức hoạt động của hệ thống cân bằng tải.

1. Cân bằng tải có thể xử lý loại giao thức dữ liệu nào?

Quản trị viên của hệ thống cân bằng tải có thể tạo các quy định chuyển tiếp đối với bốn loại giao thức chính:

- HTTP – Chuẩn cân bằng HTTP trực tiếp yêu cầu dựa trên cơ chế HTTP chuẩn. Bộ cân bằng tải đặt các tiêu đề X-Forwarded-For, X-Forwarded-Proto, và X-Forwarded-Port để cung cấp các thông tin về các yêu cầu gốc tới hệ thống backend.

- HTTPS – cân bằng HTTPS hoạt động tương tự như HTTP, với sự bổ sung mã hóa. Mã hóa được xử lý theo một trong hai cách: một là duy trì mã hóa với việc cho phép SSL đi từ đầu đến cuối hệ thống, hai là đặt bộ giải mã trên hệ thống cân bằng tải và gửi dữ liệu không mã hóa đến cuối hệ thống.

- TCP – Đối với các ứng dụng không sử dụng HTTP hoặc HTTPS, lưu lượng TCP cũng có thể được cân bằng. Chẳng hạn như lượng truy cập vào một cụm cơ sở dữ liệu có thể được mở rộng trên tất cả các máy chủ.

- UDP – Gần đây, một số hệ thống đã hỗ trợ cân bằng tải cho giao thức Internet cốt lõi như DNS và syslogd sử dụng UDP.

Các quy định chuyển tiếp này sẽ xác định giao thức và cổng vào trên bộ cân bằng tải, sau đó bản đồ hóa giao thức và cổng mà bộ cân bằng tải dùng để chuyển dữ liệu đến hệ thống backend.

2. Cân bằng tải chọn server backend như thế nào?

Các hệ thống cân bằng tải sẽ chọn cloud server để chuyển tiếp yêu cầu dựa trên sự kết hợp của hai yếu tố. Đầu tiên là đảm bảo các cloud server đã chọn có thể phản hồi chính xác các yêu cầu, và sau đó là sử dụng một quy tắc được cấu hình sẵn để “nhặt” một hay nhiều cloud server trong số này.

3. Kiểm tra “sức khỏe”

Hệ thống cân bằng tải chỉ chuyển tiếp dữ liệu đến các server backend “khỏe mạnh”. Để kiểm tra sức khỏe của server backend, hệ thống sẽ thường xuyên kết nối đến backend server thông qua các giao thức và cổng thiết lập bởi quy tắc chuyển tiếp, từ đó đảm bảo server có phản hồi. Nếu server không vượt qua được bước kiểm tra này, chúng sẽ tự động bị loại bỏ khỏi hệ thống cho đến khi có thể phản hồi lại bước kiểm tra sức khỏe đó.

4. Các thuật toán cân bằng tải

Các thuật toán phổ biến để xác định cloud server nào trên backend khỏe mạnh bao gồm:

- Round Robin: phương thức này lựa chọn server theo tuần tự. Bộ cân bằng tải sẽ chọn server đầu tiên trong danh sách của mình cho yêu cầu đầu tiên, sau đó di chuyển xuống server tiếp theo trong danh sách theo thứ tự và bắt đầu lại từ đầu khi hết danh sách.

- Least Connections: hệ thống cân bằng tải sẽ chọn server có ít kết nối nhất và cách này được khuyên dùng khi tốc độ truy cập bị chậm.

- Source: với thuật toán Source, bộ cân bằng tải sẽ chọn server dựa trên một chuỗi các IP gốc của yêu cầu, chẳng hạn như IP của người truy cập. Phương thức này đảm bảo một người dùng cụ thể sẽ luôn kết nối với cùng một server.

Các thuật toán được cung cấp cho quản trị viên sẽ tùy thuộc vào công nghệ mà bộ cân bằng tải sử dụng.

5. Cân bằng tải dự phòng

Để ngăn chặn khả năng ảnh hưởng đến toàn hệ thống nếu bộ cân bằng tải gặp trục trặc, một bộ cân bằng tải dự phòng có thể kết nối vào để tạo thành một cụm cân bằng tải. Mỗi bộ cân bằng tải đều có thể phát hiện lỗi và phục hồi.

Diagram 02: Cluster / Distributed

Trong trường hợp bộ cân bằng tải chính bị lỗi, DNS sẽ đưa người dùng đến với bộ cân bằng tải dự phòng. Để tiết kiệm thời gian khi quá trình thay đổi DNS có thể khá lâu mới thông báo được lên Internet, ngoài ra để việc chống lỗi này hoạt động tự động thì nhiều quản trị viên sử dụng hệ thống cho phép linh hoạt thay đổi IP, chẳng hạn như Floating IP.

Bằng cách cung cấp một địa chỉ IP tĩnh tùy chỉnh được khi cần thiết, các vấn đề về mất thời gian thông báo lên Internet và lưu bộ nhớ đệm khi thay đổi DNS có thể loại bỏ. Tên miền có thể duy trì liên kết với cùng một địa chỉ IP, trong khi địa chỉ IP này được di chuyển giữa các cloud server.

Một hệ thống cơ sở hạ tầng sử dụng Floating IP cao cấp sẽ giống như sau:

Diagram 03: Floating IPs

Tổng hợp

 

Tin liên quan

19/01/2023

Dự báo TOP các xu hướng công nghệ hàng đầu trong năm 2023

​Các xu hướng công nghệ 2023 nổi bật được các chuyên gia dự đoán sẽ phát triển mạnh mẽ trong những năm tới là trí tuệ nhân tạo AI, công nghệ chuỗi khối Blockchain, vũ trụ ảo Metaverse. Việc bắt kịp và thích ứng với các công nghệ này sẽ giúp các doanh nghiệp có thể nâng cao khả năng cạnh tranh của mình trong thị trường khốc liệt sắp tới. Dưới đây, hãy cùng Viettel IDC điểm qua những xu hướng công nghệ 2023 nổi bật nhé!

23/01/2023

Xu hướng Cloud 2023 hàng đầu các doanh nghiệp cần biết

Nhiều doanh nghiệp đang tích cực chạy đua với cuộc đua “số hóa”, để có được khả năng cạnh tranh cao nhất trên thị trường. Vây nên, xu hướng Cloud 2023 là những điều đang được các doanh nghiệp rất quan tâm hiện nay. Trong bài viết này, Viettel IDC sẽ đề cập đến bạn những xu hướng về điện toán đám mây hàng đầu trong năm 2023 chúng ta cần biết nhé, bên cạnh các công nghệ thực tế ảo VR, metaverse.

13/01/2023

2022 - Thời kỳ bùng nổ của Cloud tại Việt Nam

​Công nghệ điện toán đám mây - Computing Cloud năm 2022 đã phát triển và bùng nổ cực kỳ mạnh mẽ, từ đó ảnh hưởng tới nhiều doanh nghiệp lớn và nhỏ. Dưới đây, chúng ta hãy cùng xem lại các xu hướng Cloud năm 2022 phổ biến nhất với Viettel IDC nhé!

11/10/2022

Những thông tin nhất định phải biết về Ethereum mới phiên bản 2.0

Ethereum 2.0, còn được biết đến là Eth2 hay “Serenity”, là một bản nâng cấp dành cho Ethereum Node, hứa hẹn sẽ cải thiện đáng kể chức năng và trải nghiệm của toàn bộ mạng. Tuy nhiên, đó chỉ là phần nổi của tảng băng chìm. Với việc Ethereum là một trong những loại tiền điện tử phổ biến nhất trên hành tinh, việc tìm hiểu Ethereum 2.0 thực sự là gì và nó sẽ ảnh hưởng như thế nào đến toàn bộ lĩnh vực tiền mã hóa vô cùng quan trọng. Ở bài viết này, Viettel IDC sẽ cung cấp cho bạn những thông tin nhất định phải biết về Ethereum phiên bản 2.0 nhé!

13/10/2022

Công nghệ chuỗi khối Blockchain là gì? Cơ chế hoạt động của chuỗi khối Blockchain?

Công nghệ Blockchain (chuỗi khối) đang dần trở thành xu hướng mới trên thị trường đầu tư và công nghệ toàn cầu. Công nghệ này có tiềm năng ứng dụng to lớn trong các ngành từ dịch vụ tài chính, sản xuất và khu vực công cho đến chuỗi cung ứng, giáo dục và năng lượng. Việt Nam cũng không nằm ngoài xu thế này. Chính vì vậy, việc tìm hiểu về Blockchain ngay từ bây giờ là rất cần thiết đối với các bạn trẻ.

14/10/2022

Tìm hiểu kiến thức về Public Chain và Private Chain

Nền tảng blockchain đã phát triển mạnh mẽ và được ứng dụng rộng rãi trong nhiều lĩnh vực. Các phân loại của blockchain như Private, Public mang những sự khác biệt dẫn đến trải nghiệm người dùng khác nhau và đa dạng hóa sự lựa chọn loại blockchain phù hợp. Hãy cùng CryptoLeakvn tìm hiểu sự khác nhau giữa Public và Private blockchain, cũng như tìm ra lựa chọn tối ưu nhất trong các loại blockchain này thông qua bài viết hôm nay.

05/10/2022

Công nghệ Blockchain là gì? Lợi thế vượt trội khi doanh nghiệp ứng dụng Blockchain

Trong thời gian gần đây, công nghệ Blockchain đã và đang dần trở thành xu hướng trên toàn cầu, trong đó có cả Việt Nam. Có thể nói, ngành công nghệ này đã mang lại nhiều lợi ích to lớn cho doanh nghiệp, từ lĩnh vực tài chính, sản xuất cho đến cả giáo dục hoặc năng lượng.

12/10/2022

​Tất tần tật kiến thức quan trọng về hạ tầng Blockchain

Mọi hệ thống phức tạp đều yêu cầu cơ sở hạ tầng thích hợp, hoặc tài nguyên và một khuôn khổ cơ bản để hoạt động. Cũng giống như lưới điện, các trạm phát điện và đường ống bao gồm cơ sở hạ tầng năng lượng cần thiết để cung cấp điện cho một quốc gia. Do đó, các Node, phần mềm và hệ thống dựa trên đám mây hoặc phần cứng được yêu cầu để chạy các mạng Proof of Stake (PoS).

09/10/2022

Tất tần tật từ A - Z về dịch vụ Blockchain

Hiện nay, dịch vụ Blockchain đã phát triển mạnh mẽ và mở ra một xu hướng mới cho nhiều lĩnh vực khác nhau như trong tài chính, điện tử viễn thông, kế toán, logistics,... Vậy, cụ thể thì Blockchain là gì? Chúng có thể mang lại những lợi ích gì cho chúng ta? Hãy cùng Viettel IDC tìm hiểu câu trả lời cho những vấn đề này nhé! Bài viết dưới đây sẽ giải đáp chi tiết giúp bạn.

08/10/2022

Node là gì? Nên thuê Ethereum Node hay Bitcoin Node?

Bạn mới tìm hiểu về Node Blockchain, và đang phân vân không biết nên thuê Ethereum Node hay Bitcoin Note? Cách hoạt động của Node là gì? Trong bài viết này, Viettel IDC sẽ giải đáp các câu hỏi này cho bạn đọc, cùng nhau theo dõi bài viết bên dưới nhé!

// doi link