Phần mềm cân bằng tải http?


19

Hiện tại chúng tôi chỉ có một máy chủ phụ trợ cho mỗi trang web / dịch vụ web. Tôi rất muốn nghe trải nghiệm của mọi người với các ứng dụng cân bằng tải khác nhau (một cái gì đó chạy trên Linux).

Bạn muốn giới thiệu gì?

Câu trả lời:


13

Theo tập 27 của podcast StackOverflow , các anh chàng Reddit thực sự có vẻ thích HAProxy . Đây là một hướng dẫn ngắn gọn cho thấy HAProxy đang được sử dụng với EC2 của Amazon . Bạn có thể tìm thấy nhiều thông tin hơn tại trang web HAProxy .


3
Tôi sử dụng HAProxy trên một số máy chủ sản xuất và yêu thích nó. Thật dễ dàng để cấu hình và thậm chí có một giao diện web đơn giản để kiểm tra trạng thái và số liệu thống kê trong thời gian thực. Một screencast giúp tôi thiết lập phiên bản HAProxz đầu tiên của tôi có thể được tìm thấy trên [Blog tín hiệu so với tiếng ồn] [1] [1]: 37signals.com/svn/posts/1073-nuts-bolts-haproxy
Wes Oldenbeuving

Tôi quên mất khía cạnh quản lý. Điều này nghe rất hay.
Đánh dấu Renouf

21

Câu hỏi không cung cấp thông tin cụ thể về tải, các tính năng cần thiết, v.v., vì vậy, bất kỳ câu trả lời nào cũng chỉ là phỏng đoán.

Pound là một lựa chọn tốt cho các trang web nhỏ / vừa. Nó cung cấp hỗ trợ HTTPS và thiết lập dễ dàng.

HAproxy có thể mở rộng thành các ống Ethernet 10G bão hòa và cung cấp giới hạn kết nối, tức là chỉ gửi số lượng yêu cầu đồng thời đến từng máy chủ phụ trợ khi bạn có các phiên bản Apache / Ruby on Rails để xử lý.

nginx là tuyệt vời như một bộ cân bằng tải toàn bộ và máy chủ tệp tĩnh. Nó có thể thực hiện nén HTTP, viết lại URL và phục vụ tệp tĩnh trong khi thực hiện cân bằng tải.

Apache cũng thuộc dòng 2.2, một bộ cân bằng tải khá tốt. Có thể làm nhiều việc giống như nginx, nhưng đặt tải trên máy chủ cao hơn nginx. Rất đáng để xem xét nếu bạn đã quen thuộc với Apache và rất chín chắn.

Perlbal cung cấp kết nối dễ dàng giới hạn các máy chủ phụ trợ, yêu cầu ghép kênh trên các kết nối HTTP liên tục và thiết lập dễ dàng nếu bạn đang sử dụng Perl.

Bộ nhớ cache Varnish là một proxy HTTP ngược, với hỗ trợ cân bằng tải cơ bản. Nó không phải là một bộ cân bằng tải tuyệt vời, nhưng trong một số trường hợp, bộ nhớ đệm trong bộ nhớ của hầu hết các đối tượng được yêu cầu có thể loại bỏ phần trăm cao các lần truy cập máy chủ phụ trợ và nó có hiệu suất tuyệt vời. ESI bao gồm có khả năng thú vị.

Tôi không chắc chắn 100%, nhưng ngoài đỉnh đầu Perlbal và nginx cung cấp một số hỗ trợ để thay đổi cấu hình mà không cần khởi động lại bộ cân bằng tải. Đối với các trang web lớn hơn, điều này rất quan trọng và đó là một trong những điều mà các thiết bị cân bằng tải thương mại tốt làm tốt.

Tất cả các bên trên là bộ cân bằng tải cấp độ HTTP (lớp 7). Bộ cân bằng tải cấp TCP / IP có khả năng đạt được thông lượng cao hơn, nhưng bị hạn chế theo những cách khác. Tác giả HAProxy đã viết một tổng quan tốt, dễ đọc về các phương pháp và vấn đề cân bằng tải: http://1wt.eu/articles/2006_lb/

LVS là một bộ cân bằng tải cấp TCP / IP được sử dụng rộng rãi. Hầu hết các tường lửa cũng có thể thực hiện cân bằng tải cơ bản ở cấp độ IP, bằng cách băm yêu cầu đến từ một loạt địa chỉ IP phụ trợ - ít nhất là PF của OpenBSD và Cisco ASA và Juniper Netscreen có thể làm điều này.



3

haproxy hoạt động tốt như LVS.

FWIW, wordpress.com sử dụng nginx làm bộ cân bằng / proxy của họ.


2

Chúng tôi sử dụng LVS trong sản xuất. Nó được quản lý bởi đội ngũ điều hành của chúng tôi với một tập hợp các kịch bản phức tạp và xấu xa. Một hệ thống bespoke khá thông minh thông báo dữ liệu sức khỏe và hiệu suất từ ​​máy chủ thực của chúng tôi để cho phép bộ cân bằng tải đặt trọng lượng phù hợp.

LVS tất nhiên cung cấp cho bạn một điểm thất bại duy nhất - bộ cân bằng tải (có nhiều cách để thiết lập chúng một cách dự phòng).

Tôi nghĩ rằng điều này quá phức tạp để thiết lập nên tôi đã viết Fluffy Linux Cluster dựa trên cách thức hoạt động của Windows NLB (tôi nghĩ ... tôi không chắc nó hoạt động như thế nào) và cũng được CLUSTERIP truyền cảm hứng.

Chúng tôi không sử dụng nó trong sản xuất nhưng Fluffy có thể cân bằng tải số lượng máy chủ hợp lý (ít nhất là 5) không có điểm lỗi duy nhất và không có nút quản lý trung tâm, v.v.


Hmm: LVS, kịch bản ác, hệ thống bespoke khá thông minh. Thiết lập của bạn là chính xác như của chúng tôi!
Tom Anderson

2

Tôi đã sử dụng Pound trong quá khứ. Nó nhanh, đơn giản và đòi hỏi sự chú ý tối thiểu.


1

Tôi là một fan hâm mộ lớn trên LB nhiều lớp ZXTM của Zeus - nhấp vào ĐÂY


1

Nếu bạn quyết định đồng hành cùng LVS thì tôi cũng sẽ xem xét Keepaliving nếu bạn chuẩn bị sẵn sàng cho lớp máy chủ cân bằng tải của mình. Tôi đã sử dụng Heartbeat / Pacemaker với LVS trong vài tháng và thấy nó quá phức tạp và đôi khi không ổn định đối với một lớp HA LB đơn giản.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.