摘要: 用过ruby人对method_missing肯定不陌生,通常我们利用这一神技来实现调用不存在的方法,以便进行回调,利用它可以很方便的实现我们自己的DSL。 在学习method_missing之前,先理解下ruby方法调用过程 当ruby对象执行某一方法时,他需要找到这个方法,其查找流程如下: 1、查 阅读全文
posted @ 2022-05-10 00:41 阿拉懒神灯 阅读(87) 评论(0) 推荐(0) 编辑
摘要: Ruby提供了ripper这个工具,我们可利用此工具分析ruby代码,方便定位性能问题。 以下内容都是以如下代码为例: x > 100 ? 'foo' : 'bar' Ruby在执行程序前会将代码转化为更加结构化的语句 第一步:将代码切分为一个一个的词条 ripper的tokenize的方法可以将代 阅读全文
posted @ 2022-05-10 00:37 阿拉懒神灯 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 一、介绍 iostat用于监视系统IO以及CPU使用情况。 二、安装 sudo apt-get install sysstat 三、语法和选项、参数 语法:iostat [选项] [参数] 选项: -c:仅显示CPU使用情况 -d:仅显示设备IO情况 -k:显示状态以kb/s为单位 -m:显示状态以 阅读全文
posted @ 2022-05-10 00:27 阿拉懒神灯 阅读(133) 评论(0) 推荐(0) 编辑
摘要: Sinatra是一个ruby的轻量级Web框架,这这个框架总共就1000多行代码,非常简洁,值得一读。 一、Sinatra组成 Sinatra的主要实现的代码在base.rb中,主要有以下几个部分: Request:继承于Rack::Request,用于描述一个请求,通过这个类可以很方便获取到请求 阅读全文
posted @ 2022-05-10 00:20 阿拉懒神灯 阅读(92) 评论(0) 推荐(0) 编辑