ruby-on-rails - rails nginx passenger bundle 这几者是怎么协作的?
问题描述
想问一直这几者是怎么样的一种方式来工作的,他们又各自负责什么部分呢
问题解答
回答1:Ngnix是一个proxy server, 设置监听端口(80), 编码方法(gzip),错误网页在哪里(402, 403, 404),负责把request分给workersPassenger/Unicorn是application server, 坐在proxy server上面。每个proxy一般有好几个application servers作为workers,负责接受把request高速给web application(比如rails),一般appication server能处理几千个requests每秒Rails application runs inside passenger/unicorn.从nginx到passenger到rails, 完成了一个request的cycle
bundle是ruby的package manager。就像python的easy_install, pypi。每个application,可以有个Gemfile, 里面可以写明你要的library的版本,然后别的人只要bundle install就能安装这个application所需要的库了
回答2:引用于略晓网 张志回答: http://luexiao.com/questions/33136760...
Bundler主要是用来处理rails application的以来关系,同时使得每一个rails applicaton之间的环境相互独立,Bundler的出现之前,大多使用gemset来管理gem包,Bundler出现之后,由于其易用,方便,为很多rails开发者使用,现在比较常用的方法是用Bundler来管理Gem包,用rvm来管理ruby版本.
Nginx ('engine x') 是一个高性能的 HTTP 和 反向代理 服务器,其处理静态链接性能优越,补充一下grid-fs模块,其对Mongodb提供了良好的支持,而且容易配置:
location /gridfs/ {gridfs my_app field=filename type=string;mongo 127.0.0.1:27017;}
passenger主要用来管理Rails进程,不过对于passenger接触的不是很多,平时用的都是Unicorn。关于处理流程和协作:引用自Github

相关文章:
1. MYSQL新建用户设置可以远程访问的问题2. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)3. java - mybatis怎么实现在数据库中有就修改,没有就添加4. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题5. node.js - nodejs和前端JavaScript 字符串处理结果不一样是什么原因?6. 各位谁知道这个CSS时候哪里出错了???7. mysql - 我的myeclipse一直连显示数据库连接失败,不知道为什么8. mysql 5.7单表300万数据,性能严重下降,如何破?9. mysql - SQL操作时间的函数?10. mysql 为何insert的时候会有lock wait timeout 异常
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)