注:本文转自知乎,原文请
参考
Bundle是Gem包的依赖管理工具,RubyGem本身有依赖管理为何还要Bundle呢?有时候两个gem虽然都依赖于同一个gem,但是却是依赖不同的版本,这时候bundle就能帮助进行依赖计算。并且在部署的时候,能将不同app所需的一系列gem打包起来分开管理,就不至于污染整个系统的gems源。开发人员在Gemfile中指定所需的gem和版本等信息,然后bundle会计算出所有依赖的gem,并安装
Rails的接受请求的模型是一个进程处理一个请求。单个进程效率比较低,所以为了处理比较高的并发,会开启多个进程
nginx是一个高性能的web服务器,本身和ruby没有关系,由于nginx处理链接和静态文件的性能非常好,所以一般在Rails之前放上nginx接受客户端请求,并分发给后端的Rails进程。
Passenger是一个Rails应用服务的管理工具,可以统一管理Rails进程的数量、生命周期、请求队列等等。
nginx启动的时候会启动Passenger,passenger根据配置引导rails应用,rails启动的时候会调用bundle加载rails应用所需的gems
分享到:
相关推荐
### Ruby on Rails 环境搭建与 Passenger+Nginx 配置详解 #### 一、Ruby on Rails 开发环境搭建 在进行 Ruby on Rails 的开发之前,首先需要完成一系列的基础软件安装工作,包括但不限于 Ruby 语言环境、Rails ...
在Linux环境下安装Redmine,可以充分利用Linux系统的稳定性和安全性,为团队协作提供强大的支持。以下是一个详细的Redmine在Linux上的安装步骤,以及可能遇到的问题和解决方法。 ### 安装前准备 1. **系统要求**: ...
6. **预览与启动**:运行`rake generate_secret_token`生成安全令牌,然后用`rails server`或`bundle exec rails server`启动Redmine服务器。在浏览器中输入`http://your_server_ip:3000`,如果一切顺利,你应该能...
之后,安装 Phusion Passenger,这是一个用于部署 Ruby on Rails 应用的模块,通过 `gem install passenger` 安装,然后运行 `passenger-install-apache2-module` 进行配置。 接着,安装 MySQL 服务器,通过 `yum ...
虽然Windows可能不是RoR的最佳运行平台,但可以通过开启Nginx反向代理,利用 Passenger 或者Puma Worker Killer来管理和负载平衡应用实例,以提高性能和稳定性。 安全是生产环境的关键。安装`rails_12factor` gem以...
- **安装依赖**:通常需要安装Ruby、RubyGems、SQLite(或MySQL/PostgreSQL)、Passenger(用于部署)、Nginx或Apache等。 - **下载Redmine**:从官方或镜像站点获取redmine-2.6.7的压缩包,解压到适当目录。 - *...
Linux Redmine 是一款基于 Ruby on Rails 开发的项目管理软件,专为软件开发团队设计,提供了问题跟踪、项目管理、时间追踪以及文档管理等功能。它支持多种版本控制系统,如Git和Subversion,与各种开发工具无缝集成...
为了安装Redmine,你需要一个支持Rails运行的环境,这通常意味着需要Ruby、RubyGems、Bundler以及一个数据库系统(如MySQL或PostgreSQL)。 1. **安装必备工具**: - 更新系统软件包列表:`sudo apt-get update` ...
这通常涉及以下步骤:安装必要的服务器软件(如Nginx或Apache作为Web服务器,Passenger或Puma作为应用服务器),配置环境变量,设置SSL证书以实现HTTPS安全连接,以及调整服务器防火墙规则允许HTTP和HTTPS流量。...
bundle exec rails server webrick -e production ``` **三、高级设置与优化** 1. **邮件配置**:在`config/configuration.yml`中配置SMTP设置,以便Redmine能发送通知邮件。 2. **权限和插件**:管理用户角色、...
8. **部署与运行**:了解网站如何使用Ruby环境(如RVM或rbenv)和Rails来部署和运行,可能涉及Nginx或Apache作为反向代理,以及 Passenger、Puma 或 Unicorn 等Web服务器。 9. **数据库集成**:Rails通常与MySQL、...
可能需要将应用配置为与FastCGI或mod_rails(Phusion Passenger)配合工作,这允许Web服务器(如Apache或Nginx)处理Rails应用的请求。 5. **权限和所有权**:确保所有文件和目录具有正确的权限,以便Web服务器进程...
这可能包括使用Git进行版本控制,选择合适的部署平台(如Heroku、AWS或DigitalOcean),使用Capistrano或其他部署工具自动化部署过程,以及配置服务器环境(如Nginx或Apache作为反向代理, Passenger或Puma作为Ruby...