![哪个 Ruby 服务器适用于需要上传大量文件的应用程序?](https://linux22.com/image/567476/%E5%93%AA%E4%B8%AA%20Ruby%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%80%82%E7%94%A8%E4%BA%8E%E9%9C%80%E8%A6%81%E4%B8%8A%E4%BC%A0%E5%A4%A7%E9%87%8F%E6%96%87%E4%BB%B6%E7%9A%84%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%EF%BC%9F.png)
我目前正在构建一个应用程序,它将处理大量文件上传(图像,每个文件几 MB)。它还将在前端(JavaScript 应用程序后面)处理大多数 JSON 请求。
哪个 Ruby 服务器最适合保持良好的性能?Passenger、Unicorn、Rainbows 还是 Thin?
答案1
您应该始终在 Ruby 应用服务器前面放置一个反向代理,例如 Apache/nginx。并使用该反向代理作为负载均衡器,将请求均匀分发到 Ruby 服务器集群。
如果你只使用 Ruby 服务器作为服务层,回复 json 数据。那么可以使用 Thin,因为你可以使用更具可扩展性的异步模式(reactor)构建服务器。