我在学习搭建 ruby on rails 环境,用的是社区里讨论很多的 Nginx + Unicorn 部署。 对于 Nginx 和 Unicorn 的配置有稍许疑问,希望能有学长帮忙解答。
nginx 配置: upstream ruby_backend { server unix:/tmp/unicorn.sock fail_timeout=0; }
Unicorn 配置: listen 5000, :tcp_nopush => false
以上配置时侦听 5000 端口,网站可以正常解析,但是把配置改为: Unicorn 配置: listen“/tmp/unicorn.sock”, :tcp_nopush => false 也可以正常解析。
疑问: ①是不是可以说在 Unicorn 配置中“listen 5000”的配置可写可不写。nginx 只是通过 unicorn 生成的 unicorn.sock 文件来 upstream 数据,并不是通过 listen 的 5000 端口进行的数据通信。
②刚才看见一篇蝉游记网站的部署(topics/12033),其中对 unicorn 的配置中有如下配置: a).listen "/tmp/unicorn.sock", :backlog => 64 b).listen 4096, :tcp_nopush => false 请问 a,b 两句配置各起到什么作用,有什么区别?