在 Thin 网站:http ://code.macournoyer.com/thin/usage/它说您可以使用以下方式启动多个服务器:
thin start --servers 3
- 你为什么需要这样做?
- 每个服务器是否分配了不同的端口或什么?
如果您可能有并发请求要处理,您将启动不止一次的精简。要管理并发请求(同时连接),您需要一个“瘦”集群。
是的,你可以很容易地看到这一点:
让我们试试单服务器瘦身
thin start -R fart.ru
Thin web server (v1.5.0 codename Knife)
Maximum connections set to 1024
Listening on 0.0.0.0:3000, CTRL+C to stop
查看:
netstat -an | grep 300
tcp4 0 0 *.3000 *.* LISTEN
好的,我们在一个端口上进行了细听。
现在让我们试试 --servers 3
thin start -R fart.ru --servers 3
Starting server on 0.0.0.0:3000 ...
Starting server on 0.0.0.0:3001 ...
Starting server on 0.0.0.0:3002 ...
查看:
netstat -an | grep 300
tcp4 0 0 *.3002 *.* LISTEN
tcp4 0 0 *.3001 *.* LISTEN
tcp4 0 0 *.3000 *.* LISTEN
瞧,你有 3 个端口监听。
ps -ef | grep thin
报告 3 个正在运行的进程,每个进程可以管理一个并发请求。
最终,要同时处理请求,您必须启动一个精简集群并反向代理您的虚拟主机,然后在您启动的各种精简上对请求进行负载平衡。
这篇博文可以说明问题:使用 Apache 2、mod_proxy_balancer 和 Thin Clusters 扩展 Rails