[筆記] 我觀 Roobin的「在Linux平台上安装和配置Ruby on Rails详解」

本文提供了一系列针对Ruby on Rails应用程序性能优化的方法,包括使用GCPatch减少垃圾回收频率、安装C版本MySQL适配器提高数据库访问效率、应用MySQLRubyPatch进一步提升性能、合理设置FastCGI进程数以及选择合适的操作系统。
Roobin 寫了一篇 在Linux平台上安装和配置Ruby on Rails详解,裡面不只寫到一些基本的程式碼 make 的基本技巧,還提出許多性能上面的議題,實在是一篇好文章,下面有一些我看這篇文章所作的筆記記錄下來。

1. GC Path
Ruby解析器的GC Patch 這段介紹
根据他的评测表明,使用GC Patch并且设置了合适的GC参数之后,Ruby GC次数下降到原来的十分之一,有效的提高了Ruby在高并发情况下的吞吐能力
還有
这里值得一提的是,使用GC Patch和设置相应的参数之后,每个Ruby FCGI进程耗用的驻留内存是原来的两倍,因此除非你的服务器物理内存非常多,否则要慎用,避免Ruby FCGI吃光你的服务器内存。
這裡從來不知道有差,真的是長了智慧,

2. 請多安裝 mysql-ruby
rails发行包中已经自带纯ruby的MySQL数据库适配器,然而对于生产环境来说,我们仍然应该下载安装C版本的数据库适配器,以达到更好的性能。
我也聽說 ruby-mysql 比 mysql-ruby 來得慢。

3. 安裝 MySQL Ruby Patch
Stefan Kaes在这篇博客中提供了MySQL适配器的patch文件,根据他的评测,可以提高数据库访问30%左右的性能,因此建议用户下载使用该patch文件,那么安装过程改为:
tar xzvf mysql-ruby-2.7.3.tar.gz
cd mysql-ruby-2.7.3
patch < ../ mysql-ruby-2.7-less-string-copies-in-each-hash.diff ruby extconf.rb --with-mysql-dir=/opt/mysql5 make && make install

可以試試的 Patch。
4. 啟動 Fastcgi 數量要慎選
一般而言,不需要启动数量很多的FCGI进程,一个FCGI进程类似于一个Java应用服务器,启动10个FCGI类似于启动10个Java应用服务器了。由于Web Server和FCGI请求处理的网络速度差异,以及Web Server需要处理大量静态资源,经验数据表明:10个Web Server并发连接,仅仅需要1个FCGI并发进程。因此10个FCGI进程可以支撑100个Web Server的并发请求了,大约可以达到每天30万PageView。不过如果考虑到峰值并发,可以适当增加FCGI进程数量。
這裡的經驗法則很值得參考。

5. OS 選擇
另外我个人也不建议用ubuntu或者gentoo作Linux Server的OS来跑,作为一个服务器操作系统来说,要求是稳定可靠,硬件,软件,应用的兼容性好。

當然啦,我對於 OS 的選擇沒啥意見啦,這是使用者口味的不同,所以不加評論。我只能說我喜歡用 Ubuntu 來跑 Server,而 樂多跑 Gentoo Linux 來跑得蠻穩的。大家都是 Linux ,Kernel 都一樣,使用套件也都差不多,穩不穩定,還有相容度好不好只是管理者功力的問題。

延伸閱讀
  1. Railsbench 官方網站
  2. MySQL-Ruby
  3. Stefan Kaes 提到的 Ruby-MySQL Patch


【无人机】基于改进粒子群算法的无人机路径规划研究[遗传算法、粒子群算法进行比较](Matlab代码实现)内容概要:本文围绕基于改进粒子群算法的无人机路径规划展开研究,重点探讨了在复杂环境中利用改进粒子群算法(PSO)实现无人机三维路径规划的方法,并将其与遗传算法(GA)、标准粒子群算法等传统优化算法进行对比分析。研究内容涵盖路径规划的多目标优化、避障策略、航路点约束以及算法收敛性寻优能力的评估,所有实验均通过Matlab代码实现,提供了完整的仿真验证流程。文章还提到了多种智能优化算法在无人机路径规划中的应用比较,突出了改进PSO在收敛速度全局寻优方面的优势。; 适合人群:具备一定Matlab编程基础优化算法知识的研究生、科研人员及从事无人机路径规划、智能优化算法研究的相关技术人员。; 使用场景及目标:①用于无人机在复杂地形或动态环境下的三维路径规划仿真研究;②比较不同智能优化算法(如PSO、GA、蚁群算法、RRT等)在路径规划中的性能差异;③为多目标优化问题提供算法选型改进思路。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,重点关注算法的参数设置、适应度函数设计及路径约束处理方式,同时可参考文中提到的多种算法对比思路,拓展到其他智能优化算法的研究与改进中。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值