Chỉ muốn nhận ý kiến của mọi người về việc sử dụng Unicorn vs Thin làm máy chủ đường ray. Hầu hết các bài báo/điểm chuẩn mà tôi tìm thấy trực tuyến dường như rất không đầy đủ, vì vậy sẽ rất hay khi có một nơi tập trung để thảo luận về nó.Thin vs Unicorn trên Heroku
Unicron là máy chủ đa quy trình, trong khi mỏng là máy chủ dựa trên sự kiện/không chặn. Các máy chủ dựa trên sự kiện rất tuyệt ... nếu mã của bạn là không đồng bộ/không chặn - đường ray vanilla đang chặn. Vì vậy, trừ khi bạn sử dụng các thư viện không bị chặn, tôi thực sự không thấy lợi thế của việc sử dụng Thin. Thậm chí tệ hơn, trong một máy chủ không chặn, nếu vòng lặp i/o của bạn đang chặn, bạn sẽ chặn toàn bộ vòng lặp và không thể xử lý thêm bất kỳ yêu cầu nào cho đến khi cuộc gọi chặn trả về. Chặn các thư viện sẽ làm chậm quá trình làm chậm!
Tại sao Heroku chọn Thin làm máy chủ mặc định của họ (cho gỗ tuyết tùng)? Họ là những người thông minh, vì vậy tôi chắc chắn họ có lý do.
Dưới đây là một liên kết gợi ý thay thế Thin bằng 4 công nhân Unicorn - điều này có ý nghĩa hoàn hảo với tôi. 4 Unicron workers on Heroku
Không thực sự có câu trả lời đầy đủ cho câu hỏi của bạn.Một điều tôi sẽ không nói về điều này là Unicorn là tuyệt vời để gỡ lỗi kiểm tra README trên github: https://github.com/defunkt/unicorn#readme –