`

Apache 2.2 + Mongrel 設定方式

阅读更多
本來沒有打算寫的,不過看到 RailsCN 似乎有人有問題,所以還是順便寫一下好了。架設一些觀念在此我有作介紹,可以參考一下。


設定 Mongrel Cluster

請將你的 Mongrel Cluster 設定好,這裡預設 port 從 4000 ~ 4009 ,一共十個,跑在 production 環境下
mongrel_rails cluster::configure -e production -p 4000 -N 10
mongrel_rails cluster::start
修改 Apache 2.2 設定檔

Apache 的設定檔放在 httpd.conf ,以下修改內容皆在 httpd.conf 裡面設定。

首先確定你的 Apach 2.2 有 enable apache 的其中一個 Module mod_proxy
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
再來我們開始設定 Mongrel Cluster 的 reverse proxy 設定,首先我們給這組 cluster 取名叫做 examplecluster,他是10組 Mongrel ,跑在 port 4000 ~ 4009 之中
<proxy balancer://examplecluster>
# cluster member 1
BalancerMember http://127.0.0.1:4000
BalancerMember http://127.0.0.1:4001
....
BalancerMember http://127.0.0.1:4009
</proxy>
再來假設你的 hostname 為 example.com,我們開始設定 virtual host
<virtualhost example.com:80>
ServerName example.com
ServerAdmin root@example.com
DocumentRoot "/var/www/example.com/htdocs"
ProxyPass /images !
ProxyPass /stylesheets !
ProxyPass /javascripts !
ProxyPass / balancer://examplecluster/
ProxyPassReverse / balancer://examplecluster/
</virtualhost>

重點是在於 ProxyPass,ProxyPass 代表 images,stylesheets,javascript 等 static file 交給 Apache 處理,不要給 Mongrel 處理。 還有 ProxyPassReverse 要指定正確的 cluster name ,我們要指定為 examplecluster。

最後重起 Apache 即可。本設定改自著名的文章 Scaling Rails with Apache 2.2, mod_proxy_balancer and Mongrel,還有 Robin 的 在Windows平台使用Apache2.2和Mongrel运行Ruby on Rails。設定是在 Gentoo Linux + Apache 2.2.3 + Mongrel 跑完全沒有任何問題。
分享到:
评论

相关推荐

    Nginx+Mongrel实践过程

    总结,Nginx+Mongrel的组合是Ruby on Rails应用的一种有效部署方式,通过Nginx的反向代理和负载均衡功能,可以实现高效、稳定的服务提供。理解并掌握这种部署模式对于提升系统性能和运维能力至关重要。

    Mysql Server 5.1

    用于构建window + ruby + rails + netbeans + mongrel框架

    Rails 中mongrel的安装

    Mongrel是一个纯Ruby编写的高性能、非阻塞的Web服务器,它能够处理大量的并发连接。 ** Mongrel的特性 ** 1. **非阻塞I/O**: Mongrel采用非阻塞I/O模型,这意味着它能够在等待I/O操作完成时处理其他请求,从而提高...

    RailsWithApacheAndMongrel.pdf

    - 本文档推荐使用Apache 2.0.x分支,因为当时2.2.x分支存在FastCGI问题。 - 下载链接:[http://apache.cs.utah.edu/httpd/binaries/win32/apache_2.0.55-win32-x86-no_ssl.msi]...

    Web服务器Mongrel2.zip

    Mongrel2是一个基于ZeroMQ的Web服务器,语言独立,可以用17种语言编写应用,还有更多非常奇特的地方:What makes Mongrel2 special is how it satisfies these requests in a language agnostic andasynchronous way...

    Mongrel

    在“Mongrel”这个主题下,我们主要讨论的是MongoDB的特性和使用场景。首先,MongoDB使用一种称为BSON的数据格式,它是Binary JSON的缩写,提供了与JSON相似的数据表示,但以二进制形式存储,提高了存储效率和读取...

    mongrel-1.1.5.gem

    Mongrel是一种快速的针对Ruby的Http 服务器,专门为部署发布rails应用而产生的。 可以替代mod_ruby/fastcgi,可以用于生产部属环境。

    基于Ubuntu Nginx Mongrel Mysql部署rails monit-5.0

    在构建高性能、高可用性的Web应用环境中,"基于Ubuntu Nginx Mongrel Mysql部署rails monit-5.0"的方案是一个常见的选择。这个方案结合了多种强大的工具和技术,以确保应用程序的稳定运行和高效管理。以下是这些关键...

    mongrel_service 安装包

    相信安装Redmine时会用到它们 win32-service-0.5.2.gem gem_plugin-0.2.3.gem mongrel_service-0.3.4-i386-mswin32.gem

    net.sf.mongrel_1.0.0.zip

    Mongrel 是一个 Eclipse 插件,用来在 Eclipse 环境中开发和运行基于 Tomcat 的Web应用。可方便进行配置、调试 Tomcat 会话,基于 Sysdeo Tomcat 插件开发。 安装方法:下载后将压缩包解压到 Eclipse 的 plugins ...

    mongrel2:Mongrel2 Web服务器项目

    Mongrel2:与语言无关的Web服务器Mongrel2是与应用程序,语言和网络体系结构无关的Web服务器,其重点是使用现代浏览器技术的Web应用程序。特征语言不可知论者,带有一个简单的后端协议,支持Mongrel2粉丝编写的17种...

    nim-mongrel2:Mongrel2 Web服务器的处理程序框架

    2. **类型安全**:Nim-mongrel2通过类型安全的方式封装Mongrel2的API,避免了潜在的运行时错误。 3. **模板和元编程**:利用Nim的模板和元编程能力,可以创建灵活的处理程序和中间件。 4. **错误处理**:nim-mongrel...

    mongrel-1.1.4-x86-mswin32-60.gem

    mongrel-1.1.4-x86-mswin32-60.gem 的gem包

    Linux系统上配置Nginx Mongrel cluster

    在Linux系统上配置Nginx Mongrel Cluster是一个高效的方法,用于优化Rails应用程序的并发处理能力。Nginx作为一款小巧而强大的HTTP服务器,能够作为负载均衡反向代理,接收用户的请求,并将它们分发到多个Mongrel...

    httpd-2.4.58.tar.gz

    nginx 是一个小巧且高效的HTTP服务器,也可以做一个高效的负载均衡反向代理,通过它接受用户的请求并分发到多个Mongrel进程可以极大提高Rails应用的并发能力tomcat 技术先进、性能稳定,而且免费IIS(windows)安全...

    seraph:[废弃] 用 PHP 为 Mongrel2 编写处理程序的框架

    我认为处理程序是长时间运行的应用程序,它发布对使用几个ØMQ套接字从 Mongrel2 服务器拉出的请求的响应。 我写Seraph是因为我想强调的是,在 Mikko Koppanen 的“php-zmq”PHP 扩展的帮助下,PHP 不再受 Apache ...

    mongrel_service

    将RedMine安装为Windows服务所需的文件,有了这个文件,就可以非上网机上安装了。

    基于Ubuntu Nginx Mongrel Mysql部署rails

    博文链接:https://swachian.iteye.com/blog/175033

Global site tag (gtag.js) - Google Analytics