2011-09-26 6 views
7

Trong Node.js, tốt nhất bạn nên tạo một createClient() cho mỗi yêu cầu HTTP hoặc người dùng riêng lẻ, hoặc tốt hơn là nên sử dụng lại cùng một máy khách cho tất cả các yêu cầu? Bạn vẫn nhận được tốc độ của một số khách hàng song song chỉ với một?Node.js: Có bao nhiêu khách hàng Redis?

Trả lời

7

Trong Node.js, nó sẽ là tốt nhất để làm một createClient() cho mỗi yêu cầu HTTP cá nhân hoặc sử dụng, hoặc nó sẽ là tốt hơn để sử dụng lại cùng khách hàng cho tất cả các yêu cầu?

Bạn nên sử dụng lại kết nối máy khách Redis và duy trì nó trong suốt thời gian chương trình của bạn kể từ khi thiết lập kết nối mới có thể tránh được một số chi phí ban đầu.

Bạn vẫn nhận được tốc độ của một số ứng dụng khách song song chỉ với một máy khách?

Bạn có thể nhận được một số cải tiến hiệu suất với một nhóm nhiều máy khách song song (số lượng giới hạn, không kết nối riêng cho từng yêu cầu hoặc người dùng HTTP riêng lẻ), nhưng câu hỏi là bạn sẽ đối phó với đồng thời các lệnh được thực hiện như thế nào. Mặc dù redis được xây dựng để xử lý hàng trăm hoặc hàng nghìn khách hàng được kết nối đồng thời, nhưng việc kết nối kết nối là điều mà tôi nghĩ, nên được kiểm soát bởi thư viện khách hàng mà bạn đang sử dụng. Tuy nhiên, bạn nên sử dụng hai kết nối song song nếu bạn đồng thời sử dụng redis để nghe trên một số kênh pub/sub và đồng thời thực hiện các lệnh bình thường.