Khác nhau giữa load balacing tcp VS http?

Chào các bác, e đang bí chỗ này, đã config cho nó chạy được nhưng mà đọc vẫn không hiểu được load balacing tcp khác với http ở điểm nào, mạn phép lập topic này nhờ mấy bác giải thích theo 1 cách dễ hiểu nhất, e cảm ơn

thì 1 cái là tcp, 1 cái là http
cái bạn cần tìm hiểu là http là gì, tcp là gì

4 Likes

Mình nghĩ câu hỏi của bạn chủ thread là về sự khác nhau giữa load balancing tcp (tầng transport) và load balancing http (tầng application).

Cơ mà mình tra google cũng chưa hiểu :sweat_smile:

3 Likes

Http là application layer protocol
Tcp là transport layer protocol
Load balancing cho 2 lọai đó khác nhau ở scope của nó thôi, lọai kết nối cần load balancing thôi mà
Thật sự không hiểu câu hỏi muốn hỏi gì

3 Likes

Cách dễ hiểu thì lại khó đầy đủ, thôi thì m cố giải thích theo cách ở giữa, không dễ hiểu và chưa đầy đủ.

TCP vs HTTP load balancer là topic phổ biến lâu rồi, cách gọi khác là L4/L7 load balancer (LB) (hay layer 4/ layer 7 trong OSI model), có mặt ở tất cả những architecture lớn.

Ngắn gọn là ở TCP (L4) LB, 1 request thông qua LB sẽ được điều hướng tới 1 server để xử lý, việc điều hướng không quan tâm tới request đó có gì, việc quan trọng nhất nó xử lý là chọn server nào gần nhất, response nhanh nhất. Ví dụ: dns round-robin

Còn ở L7 LB, nhiều thứ hơn có thể diễn ra, do đó độ phức tạp cũng lớn hơn nhiều lần. LB “có thể” xem xét trong request có chứa thông tin gì, dựa vào thông tin đó mà hướng request tới server khác để xử lý. Ví dụ: request của m muốn xem 1 video dựa vào 1 endpoint, LB sẽ dẫn request của m tới server chứa video thay vì server chạy PHP.

Mấy cái trên chỉ là bề nổi thôi, đi tìm hiểu sâu thì nó không “chỉ” đơn giản vậy chút nào.

Reference: Beginner, Intermediate

4 Likes

cái chính là khái niệm theo cách dễ hiểu bác

cảm ơn bác, chắc đây là cái em cần

bác ơi cho em hỏi thêm được không, nếu như load balacing ở L7 tiện như vậy thì tại sao thằng Nginx nó support mình L7 ở bản free còn L4 lại ở bản trả phí nhỉ

đồ ăn sáng ngoài đường 100k là coi như đã rất ngon rồi.
nhưng vẫn có những người thuê cả đầu bếp về nấu riêng cho ăn mỗi bữa sáng

đơn giản là cái gì cần thì người ta làm để bán thôi. bạn chưa thấy được sự cần thiết vì ở kiến thức hoặc nhu cầu của bạn hiện tại chưa tới. khi nào bạn thật sự cần thì sẽ hiểu lý do sự tồn tại của tcp load balancing

3 Likes

L4/L7 load balancer đều support ở bản Open source mà.

3 Likes

em đọc vài chỗ nói bản free chỉ sp L7 @@

à tranh thủ topic cho em hỏi tý ạ ,
L4 tầng vận chuyển theo lý thuyết thì nó sẽ quyết định xem sẽ dùng nghi thức nào để vận chuyển gói tin vậy thì liên quan gì đến việc điều hướng nhỉ , đáng lẽ việc điều hướng phải nằm ở L3 network chứ nhỉ ?

1 câu nữa là theo em được học thì mỗi thiết bị mạng đều được tạo ra và làm việc ở 1 số tầng nhất định (vd: router tầng 3 , switch tầng 2) , vậy khi ta viết 1 ứng dụng trên máy tính ta có thể can thiệp sâu vào tất cả các tầng được ko ? vd: can thiệp vào tầng 2 ( thay đổi địa chỉ mac) , tầng 3 ( thay đổi giao thức) , sửa header network , frame header ?

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?