Một vài lý do quan trọng
- nó được viết bằng Ruby (xem http://github.com/ruby/ruby/tree/trunk/lib/webrick )
- Đã chỉnh sửa nó không có nhiều tính năng mà một trang web sản xuất thường cần, chẳng hạn như nhiều nhân viên (cụ thể là pre-fork, quản lý vòng đời, xử lý không đồng bộ, v.v.), chuyển hướng, viết lại, v.v.
Khi tôi đề cập đến chuyển hướng / viết lại, tôi đang đề cập đến thực tế là sử dụng Webrick, bạn phải xử lý các đoạn viết lại ở một lớp khác (Rack, Sinatra, Rails, mã Webrick tùy chỉnh, v.v.). Điều này yêu cầu bạn quay thêm các "trình xử lý" ruby để thực hiện viết lại mã của bạn. Đối với một trang web có lưu lượng truy cập thấp, điều này có thể ổn vì bạn có thể có các quy trình được làm nóng sẵn chưa làm gì cả. Tuy nhiên, đối với một trang web có lưu lượng truy cập cao hơn, đây là tải thêm trên máy chủ đối với thứ mà các máy chủ giao diện người dùng (Apache, Nginx, v.v.) có thể xử lý mà không cần quay Ruby * và có thể là các đơn đặt hàng nhanh hơn.
* ví dụ: nếu bạn đang chạy phía sau bộ cân bằng tải, bạn có thể định tuyến tất cả lưu lượng ghi lại đến một máy chủ không được cài đặt ruby và để các máy chủ chính của bạn chỉ quản lý lưu lượng chính. Lưu lượng viết lại này có thể là do thay đổi trang web cho SEO hoặc một cái gì đó tương tự. Một trường hợp khác sẽ là một trang web có nhiều thành phần và có thể một phần là Rails, một phần khác là PHP và cần phải viết lại cho cả hai (tức là viết lại các đường dẫn PHP cũ thành Rails)