这是一个从
PragDave的博客上面学来的技巧,很实用,很cool!
话说在一个运行着Rails的网站上面,我们可以用Linux的top命令来监控Rails应用程序实例的运行状况,占用的内存,消耗的CPU等等,例如JavaEye网站的某一刻的截图:
在这个截图里面,我们可以了解Rails进程实例的运行状况,但是我们无法确切的知道,某个当前时刻消耗CPU很高的fcgi进程究竟在执行哪个请求,如果能够确切的了解这个信息,对于寻找性能瓶颈有极大的帮助,所以下面看我们来变个魔术:
在你的Rails应用的app/controllers/application.rb里面增加两个filter,如下:
before_filter :set_process_name_from_request
after_filter :unset_process_name_from_request
def set_process_name_from_request
$0 = request.path[0,16]
end
def unset_process_name_from_request
$0 = request.path[0,15] + "*"
end
在ruby语言中$0是应用程序的命令行,因为我们以fcgi方式启动Rails,所以默认显示为dispatch.fcgi,但我们现在要改变$0,把URI强行赋值给$0,然后top就被我们欺骗了:
乖乖的给我显示出来我当前处理请求的URI是 /blog/283416,其实就是我的这篇博客:
对领域模型实现的总结性观点。
是不是很酷!如果Rails应用正在处理该请求,那么top显示 /blog/283416,如果Rails应用已经处理完该请求,那么top显示 /blog/283416* ,再来一个全一点的,给大家过过瘾
提醒:top命令启动以后,要按“c”,切换到显示完整命令的模式才能显示处理URI。
- 大小: 28.7 KB
- 大小: 10.1 KB
- 大小: 89.5 KB
分享到:
相关推荐
本代码是用jquery+rails实现的大数据下载的进度显示。实现原理是使用ajax方式向服务器提起下载请求,然后根据服务器传回的数据处理结果决定是否还需向服务器发起请求,并根据服务器传回的结果显示下载进度。
本资源是在Rails开发先行的时候确定可以运行的Rails工程,可以直接用此代码运行画面
一个自托管的工具,用于监视Ruby on Rails应用程序的性能。 这是New Relic APM,Datadog或其他类似服务的简单免费替代品。 它允许您跟踪: 吞吐量报告(请参阅RPM数量(每分钟的请求数)) 平均响应时间 最慢的...
routing-filter 包裹了 Rails 路由系统的复杂野兽,在 Rails URL 识别和生成中提供了看不见的灵活性和强大功能 路由过滤器围绕着复杂的野兽,Rails 路由系统在 Rails URL 识别和生成中提供了看不见的灵活性和强大...
RailsProfiler 向您的 Rails 应用程序添加了一个工具栏,显示有关在您访问应用程序页面时发出的每个请求的有用的高级分析信息。 目前显示: 页面加载引起的总内存增长(以 MB 为单位) 这显示了页面的大致内存...
Ruby核心团队成员Aaron Patterson完成了phuby,它可以在Rails应用下运行php应用程序。项目的地址在https://github.com /tenderlove/phuby,尽管项目主持人Aaron发布了几个视频去证明phuby能让php在Rails下运行,但...
rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails ...
《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...
Ruby on Rails Guides v2 - Ruby on Rails 4.2.5
[Pragmatic Bookshelf] Crafting Rails Applications Expert Practices for Everyday Rails Development (E-Book) ☆ 图书概要:☆ Rails 3 is a huge step forward. You can now easily extend the framework, ...
一个用Ruby on Rails搭建的图片分享的网站项目.完整源代码
中文世界唯一一本Rails 4.0.0 + Ruby 2.0.0 的自學書籍
rails文档 rails api 英文
《Rails之道》按照Rails的各个子系统进行组织编排,分别介绍了Rails的环境、初始过程、配置和日志记录,Rails的分配器、控制器、页面生成和路由,REST、资源和Rails,ActiveRecord的基础、关联、验证和高级技巧,...
adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成 AdminLTE Rails gem AdminLTE 是后端的高级 Bootstrap 主题。英镑 AdminLTE Rails gem 与 Rails 资产管道集成了英镑AdminLTE主题。安装将...
本资源是参照rails敏捷开发第四版书中的例子,rails的版本是rails3.2.6
Bootstrap 3 和 Rails 4(样例用的是Ruby 2.1.1,Rails 4.1.4) Table of Contents Preface 1 Chapter 1: Introducing Web Application Development in Rails 7 Why Bootstrap with Rails? 8 Setting up a Todo ...
rails2-sample good book
rails指南 中文版
使用Aptana+Rails开发Rails Web应用 有Aptana的安装配置等等,中文