ruby的几个web server,按照开发活跃度.并发方案及要点.适用场景等分析puma vs passenger vs rainbows! vs unicorn vs thin. 1. thin: 长久未更新, 2. unicorn: 未测试. 3. opensource passenger or enterprise passenger:  open source版只支持多进程*1线程,enterprise版收费,但支持多进程*多线程.性能不如其宣传的好,甚至比unicorn 和 puma…
原文:http://stackoverflow.com/questions/4113299/ruby-on-rails-server-options     一,Apache vs Nginx        他们都是web服务器,都能伺服静态文件,利用恰当的模块也能伺服动态的web应用.Apache更加流行,拥有更多的功能:Nginx则相对小巧.快速.功能少.        Apache 和 Nginx都能在盒子外(out-of-the-box)伺服Ruby服务器,为此你需要使用另外的插件来组合…
前言 持续交付 版本控制器:Gitlab.GitHub 持续集成工具:jenkins 部署工具:ansible  课程安排 Gitlab搭建与流程使用 Ansible环境配置与Playbook编写规范 Jenkins环境构建与任务编写 Freestyle任务实现静态网站部署交付 Pipeline任务实现WordPress部署交付 适用对象 从事运维相关岗位的同学 想了解持续交付领域的同学 想拓宽自己的同学 奋战在运维交付第一线的同学 GitLab 什么是GitLab? GitLab是一个开源分布…
iredmine的linux服务器mysql性能优化方法与问题排查方案     问题定位:   客户端工具: 1. 浏览器inspect-tool的network timing工具分析   2. 浏览器查看 response header, 分析http server 与 web server.       服务器工具:   0. nmon 查看各类系统负载, rrdtool 查看网络状况.   1. uptime看cpu负载;    free看内存;  mem ; cat /proc/memi…
1,使用Unicorn或者Thin服务器替代默认的webrick.2,静态资源压缩合并,放到云存储上.3,同时可以使用rails的Turbolinks,使用js替换title和body,但也带来了js逻辑的变化.4,Active Record Associations预加载,includes或者preload,避免n+1问题5,缓存.页面缓存.方法缓存以及俄罗斯套娃. 一,前端优化1,asset pipeline:合并压缩静态文件2,Turbolinks:利用浏览器的PushState和ajax…
安装ruby环境 RVM(ruby版本管理工具)安装 gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 curl -sSL https://get.rvm.io | bash -s stable source /etc/profile.d/rvm.sh 列出所有可用的ruby版本 rvm list known 安装一个ruby版本 rvm install 2.2 或者…
Grape中的代码如下: def market @market ||= Market.find(params[:id]) end @market基于类层次的实例变量,属于非线程安全,如果一直使用多线程服务器,可以使用 Thread.current 代替: def market Thread.current[:market] ||= Market.find(params[:id]) end 如果考虑到以后哦使用其他类型服务器,比如 Thin, 可以使用 request_store gem 包,参考…
https://www.phusionpassenger.com/docs/tutorials/what_is_passenger/ What is Passenger? 一个开源的web程序服务.它除了HTTP请求,管理进程和资源,能够administration, monitoring,并进行问题诊断. 容易使用,让产品的部署变得容易和scalable( if a piece of computer hardwareor software is scalable, it continues…
目录 1. 概要 2. nginx + unicorn 配置 2.1. package 安装 2.2. 配置文件设置 2.2.1. 配置 unicorn 2.2.2. 配置nginx 2.3. 测试配置结果 3. nginx 负载均衡 4. 补充说明 概要 unicorn 和之前的 passenger 的设计理念不同, 究竟谁更好其实还得看具体的使用场景. 但是我觉得 unicorn 有个比 passenger 好的地方就是不用重新编译 nginx. nginx + unicorn 配置 pac…
应用部署方式为 nginx + passenger + rails 当我想要用nginx来默认处理400以上状态时,发现在rails返回respose之后,nginx不会再次执行error_page(官方介绍该directive在proxy返回response依然会执行),原因在于需要配置 passenger_intercept_errors on ; nginx.conf 中 server 配置: server { listen 3443 ssl; server_name XXX; ssl_c…