Ruby
文章平均质量分 67
iteye_8302
这个作者很懒,什么都没留下…
展开
-
性能监控的好工具 - NewRelic简介
我们[url=http://chanyouji.com]蝉游记[/url]服务器端性能监控一直用[url=http://newrelic.com/]NewRelic[/url],用它的免费版本N长时间,有必要为好工具义务宣传一下。首先你需要在网站上注册一个新帐号,根据服务器端的应用框架选择安装对应的插件,它提供了很多常见应用框架插件,以Rails为例子,只需要在Gemfile配置,执行bu...原创 2014-10-31 15:36:44 · 579 阅读 · 0 评论 -
从C#.net到RoR - GuruDigger的的迁移经验分享
===广告部分,想看技术部分的可以直接跳过 :) ===[url=http://gurudigger.com]GuruDigger[/url]是一个面向web开发者的社区,能够从用户认证通过的Email 出发,自动爬遍互联网,根据用户在互联网上的活动进行分析,对掌握的每项编程语言技能进行评分和排名:[img]http://dl.iteye.com/upload/attachment...2011-07-18 09:33:56 · 165 阅读 · 0 评论 -
在Android系统上安装Ubuntu/RoR(兼EeePad评测)
最近2周都在折腾刚刚入手的Android平板EeePad TF101,累计刷机无数次,尝试了无数应用,今天刚刚折腾完在平板上运行Ubuntu和RoR,写篇短文介绍一下。先上2张图:合体前:[img]http://dl.iteye.com/upload/attachment/508574/3e178a6a-d0df-36cf-b726-c5b175124db6.jpg[/im...2011-07-01 17:11:15 · 267 阅读 · 0 评论 -
将常用功能插件化 - 提高开发效率
虽然Rails提供了很多便利的内置方法,能够让我们快速处理开发中常见的需求,但还是会有要写大量相似代码的情景。利用ruby语言的动态特性,我们可以将这些代码组件化,举一个active record扩展的实际例子:枚举类型的属性,比如用户的性别属性,在数据库里面用0/1表示男/女,我们有很多地方要用到这个属性:[code="ruby"]#在模型中我们需要写validatevali...2009-08-14 14:50:15 · 221 阅读 · 0 评论 -
Ruby vs Python 第2波 - 贪吃蛇AI平台冲刺
[url=http://rubyvspython.org/]ruby vs python[/url] 是[url=http://gurudigger.com]Gurudigger[/url]网站推出的一个编程活动,今年是一个[url=https://bitbucket.org/linjunhalida/snake-challenge/wiki/Home]贪吃蛇AI平台[/url],我之前写过一篇[...原创 2011-06-21 09:36:47 · 267 阅读 · 0 评论 -
让Net::HTTP自动使用代理
拜和谐的大防火墙所赐,调用微薄,人人等国外克隆网站的api需要用代理,而老外写的第3方lib通常没有考虑代理支持。一个小技巧,只要这些lib是用Net::HTTP来访问的,那么只要用一段小代码就能自动切换到Net::HTTP::Proxy,而无需改动原始代码:[code="ruby"]#这里从环境变量读取,可以改成从配置文件读取if ENV['http_proxy'] ...2011-05-20 12:09:11 · 338 阅读 · 0 评论 -
Ruby 1.9 String Encoding (WIP)
[code="ruby"]"你好".force_encoding("GBK") == "你好" #>> false "Hello".force_encoding("GBK") == "Hello" #>> true"你好".force_encoding("GBK") "你好"原创 2010-03-03 10:27:11 · 84 阅读 · 0 评论 -
强大的有限状态机 - state_machine
在推荐Ruby on Rails给做企业应用的朋友时候,比较常见的问题有"Ruby有没有好用的开源工作流引擎?",基于有限状态机([url=http://en.wikipedia.org/wiki/Finite_state_machine]Finite State Machine - FSM[/url])构建工作流引擎是经常使用的实现方法,写篇短文介绍一下Ruby世界里的有限状态机:首先列...2009-06-21 23:30:50 · 238 阅读 · 0 评论 -
解决Rack在Lighttpd / fastcgi下的参数错误
Rails2.3开始支持Rack,今天尝试了一下将原先基于Controller/Action做ajax校验的部分代码迁移到Rack,改动还是蛮简单的,假设原先的请求如下:/ajax_validator/check_login?value=quake考虑到兼容,改写成通过PATH_INFO和QUERY_STRING拿数据,代码如下:[code="ruby"]class AjaxV...2009-06-18 21:32:52 · 229 阅读 · 0 评论 -
最好的RoR IDE - Netbeans
记录几个常用的Netbeans贴心功能1. 快速打开类文件,比如找一个UsersController,Ctrl+O打开,输入UC/UsC/UseC等缩写就可以快速定位2. 打开文件,比如要编辑routes.rb,直接用Alt+Shift+O,输入rou*.rb,就可以快速打开3. 寻找方法所在的类,Ctrl+O,输入#method_name4. options ->...2009-06-11 21:44:23 · 108 阅读 · 0 评论 -
will_paginate 国际化 i18n
在做i18n的时候遇到will_paginate插件的问题,google一下发现这个解决方法:[url]http://lawrencesong.net/2009/01/enable-i18n-in-will_paginate-plugin/[/url]不过这个方法只能指定一个locale,无法根据用户选择locale,显示不同的翻译.通过查看will_paginate源代码,发现了...原创 2009-12-28 17:02:29 · 104 阅读 · 0 评论 -
用Haproxy+OpenStack实现web application auto scaling
这个是根据本文章内容在china openstack user group会议上做的演讲:[url]http://quake.github.com/slides/cosug-2012/[/url]======分割线======前面写过[url=http://quake.iteye.com/category/189914]2篇文章[/url]介绍过OpenStack,今天介绍一下...2011-12-16 10:58:57 · 162 阅读 · 0 评论 -
Bambook开发比赛简记
最近参加了[url=http://bbsdk.sdo.com/]盛大的Bambook开发比赛[/url],记录一下这次比赛的经历。因为一直是在做web应用,所以我参加比赛的创意自然和web脱离不了关系:开发一个浏览器插件,用户安装好这个插件以后,就能够通过网页管理、分享Bambook上的书籍。最终完成的作品: [url=http://bambook.cnprog.com/]http...2011-02-27 19:12:07 · 210 阅读 · 0 评论 -
试用zopfli - 更高效的zlib压缩工具
[url]https://code.google.com/p/zopfli/[/url] 是Google最新推出的zlib压缩工具,和之前的gzip算法相比,能够节约3~8%的压缩空间,压缩时间差不多要慢100~1000倍。虽然压缩时间要慢很多,但是它很适合用来做网页静态资源压缩,节约用户下载时间和运营中的流量带宽成本。第一时间在我们的一个生产环境试用了一下,对于js和css文件可以节约5%的si...2013-03-04 12:53:21 · 254 阅读 · 0 评论 -
升级 Ruby 2.1 以及GC调整
Ruby从1.8 => 1.9 => 2.0 => 2.1 一直在GC上不断地改进,最近2.1.1刚刚发布,抽空将我们的应用从2.0升级了一下,记录一下相关改动。我们在服务器使用的是rvm,首先更新一下rvm:rvm get head淘宝提供了ruby相关的镜像,可以更新一下源,后续安装会快很多:sed -i 's!cache.ruby-lang.org/pub/ruby!...2014-02-28 16:53:22 · 293 阅读 · 0 评论 -
ruby arduino hacking - 串口通讯
ruby和串口通讯可以通过[url=http://ruby-serialport.rubyforge.org/]serialport[/url]这个gem来实现,这个gem的用法很简单,先来看一个简单的串口输入输出例子:[code="ruby"]require 'rubygems'require 'serialport'sp = SerialPort.new "/dev/t...2012-10-06 21:40:58 · 258 阅读 · 0 评论 -
ruby arduino hacking - 入门篇
我对[url=http://arduino.cc]Arduino[/url]一直很有兴趣,它简单容易上手,不折腾实在对不起我大学的电子工程专业(虽然专业课程都60分,补考什么的...),最近终于有空可以开始写系列博客,记录我的折腾之路。什么是arduino,已经有很多文章了:[quote="arduino.cc"]Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(...2012-09-16 17:34:57 · 181 阅读 · 0 评论 -
蝉游记网站的部署 Nginx,Unicorn,Capistrano,OOB,Graceful Restart
蝉游记( [url]http://chanyouji.com[/url] )网站之前用Nginx+Passenger+自制script来部署,随着用户增多,移动app的api调用增加,服务器增多和无缝部署重启的需求,转移到了Nginx+Unicorn+Capistrano,写篇博客记录一下各种细节和需要注意的地方。1. Nginx的配置[code="conf"]gzip on;...2013-06-27 12:15:08 · 1462 阅读 · 0 评论 -
Rails 3.2 性能优化记录
将一个项目从[url=http://quake.iteye.com/blog/1445681]rails2.3+ruby1.8升级到rails3.2+ruby1.9[/url] 之后,性能测试发现原先平均500ms的请求,变成了750ms,性能损失达到了50%,经过一些性能优化以后,改善到了400ms左右,记录一下优化的3个地方。[size=large]1. GC调整[/size]...2012-04-02 14:04:58 · 137 阅读 · 0 评论 -
做了一个脚本,方便大家用sunpot做中文全文索引
sunspot ( [url]https://github.com/sunspot/sunspot[/url] ) 经过这几年的发展,已经非常完善,在ruby做全文索引属于首选方案,但是原始配置不支持中文分词,我做了一个脚本,可以很方便build一个带mmseg4j ( [url]http://code.google.com/p/mmseg4j/[/url] ) 分词算法的solr server:...2011-12-02 12:13:11 · 145 阅读 · 0 评论 -
一个rails2.3+ruby1.8项目升级到rails3.2+ruby1.9的记录
经过2个星期的折腾,终于将一个项目从rails2.3+ruby1.8升级到rails3.2+ruby1.9,记录一下过程和踩到的地雷:升级流程:1. 在ruby1.8和rails2.3的环境下,在项目下安装rails_upgrade插件: [url]https://github.com/rails/rails_upgrade[/url] 运行下列命令,将输出的内容保存供后续使用。...2012-03-08 11:42:55 · 179 阅读 · 0 评论 -
60行代码实现分享到微博,QQ空间,豆瓣 - 介绍好用的Faraday
因为项目需要在后台实现自动将内容同时分享到微博,QQ空间,豆瓣等各个社交网络,一开始准备找个现成的gem,发现了hooopo写的:[url]https://github.com/hooopo/oauth_china[/url] 但是这个项目微博用的是OAuth 1,新浪很快就不支持了,原准备fork一下修改,但觉得依赖太多,而且我们的项目本身用了Omniauth做登录,用户的token等信息都...2012-07-28 12:24:06 · 196 阅读 · 0 评论 -
介绍一个Python v.s Ruby的编程活动
[url=http://pythonvsruby.org/]Snake Challenge - Python v.s Ruby[/url]是一个通过程序来控制贪吃蛇的编程活动,具体规则如下:参赛选手需选择自己是Pythoner还是Rubyist.通过[url=https://bitbucket.org/linjunhalida/snake-challenge/wiki/API/CN]API...2011-03-29 14:15:50 · 116 阅读 · 0 评论 -
CodeRack - 一个Rack中间件的代码比赛
[url]http://coderack.org/[/url] 是10月份举行的一个Rack Middleware的代码比赛,在截止日前共有95个代码提交,然后评委从中选择了10个,目前正在进行公开投票选前3名。简单介绍一下这10个Rack Middleware:[url=http://coderack.org/users/chriskottom/entries/66-rackdomain...2009-12-07 17:04:41 · 358 阅读 · 0 评论 -
一行代码搞定ActiveRecord的二级缓存
[size=large]背景介绍:[/size]JavaEye在今年1月份发布新版本以来,一直在使用cache_fu插件为整个网站提供缓存功能,在使用cache_fu时有遇到一些api调用不方便的问题:1. 它没有对find(id)方法进行重写:[code="ruby"]class User < ActiveRecord::Base acts_as_cachedend...2008-10-06 11:59:07 · 260 阅读 · 0 评论 -
Ruby每周一测 - 中英文混合字符串截取
这篇Ruby每周一测有点特殊,它不是翻译[url=http://rubyquiz.com/]Ruby Quiz[/url]上的文章,而是我自己出的一个quiz :) :我们在做页面排版的时候,为了避免过长字符串撑开页面,经常需要调用截取过长字符串的方法,rails已经为我们提供了一个方法:[code="ruby"]ActionView::Helpers::TextHelper#t...2008-06-09 17:56:21 · 239 阅读 · 0 评论 -
Ruby - 条条道路通罗马
Ruby语言有TMTOWTDI的味道 (There’s more than one way to do it),一些人认为这是一种不好的味道,但我觉得这很好玩,颇有条条道路通罗马意味。我翻译过一些[url=http://www.iteye.com/search?type=topic&query=Ruby%E6%AF%8F%E5%91%A8%E4%B8%80%E6%B5%8B&sort=create...原创 2008-06-04 10:30:28 · 138 阅读 · 0 评论 -
Ruby每周一测 - 方法名缩写调用
Ruby每周一测 - [url=http://rubyquiz.com/]Ruby Quiz[/url] 是Ruby Talk邮件列表上的一个持续了很长时间活动,每周有一个小题目被提出来,然后大家进行解答讨论。Amazon上还有相关的书: [url=http://www.amazon.com/Best-Ruby-Quiz-Pragmatic-Programmers/dp/0976694077]Be...2008-05-28 16:14:43 · 150 阅读 · 0 评论 -
Ruby每周一测 - 海龟画图
Ruby每周一测 - [url=http://rubyquiz.com/]Ruby Quiz[/url] 是Ruby Talk邮件列表上的一个持续了很长时间活动,每周有一个小题目被提出来,然后大家进行解答讨论。Amazon上还有相关的书: [url=http://www.amazon.com/Best-Ruby-Quiz-Pragmatic-Programmers/dp/0976694077]Be...2008-05-13 22:39:04 · 403 阅读 · 0 评论 -
Rails 2.1值得关注的新特性
[url=http://www.iteye.com/news/2118]Rails 2.1快出来了[/url],和2.0相比它又添加了很多新特性,列举一下我认为值得关注的新特性:[size=medium]1. Has Finder 功能[/size]广受欢迎的[url=http://pivots.pivotallabs.com/users/nick/blog/articles/28...2008-05-04 09:32:46 · 137 阅读 · 0 评论 -
使用libmemcached提速memcached的操作
[url=http://tangent.org/552/libmemcached.html]libmemcached[/url]是一个基于C/C++实现的memcached client library,[url=http://blog.evanweaver.com/files/doc/fauna/memcached/files/README.html]memcached gem[/url]给这个...2008-04-28 12:03:18 · 141 阅读 · 0 评论 -
Ruby每周一测 - 容易记的电话号码
Ruby每周一测 - [url=http://rubyquiz.com/]Ruby Quiz[/url] 是Ruby Talk邮件列表上的一个持续了很长时间活动,每周有一个小题目被提出来,然后大家进行解答讨论。Amazon上还有相关的书: [url=http://www.amazon.com/Best-Ruby-Quiz-Pragmatic-Programmers/dp/0976694077]Be...2008-04-16 15:40:57 · 215 阅读 · 0 评论 -
Ruby每周一测 - 液晶屏数字
Ruby每周一测 - [url=http://rubyquiz.com/]Ruby Quiz[/url] 是Ruby Talk邮件列表上的一个持续了很长时间活动,每周有一个小题目被提出来,然后大家进行解答讨论。Amazon上还有相关的书: [url=http://www.amazon.com/Best-Ruby-Quiz-Pragmatic-Programmers/dp/0976694077]Be...2008-04-02 16:08:05 · 156 阅读 · 0 评论 -
Ruby每周一测 - 找零钱
Ruby每周一测 - [url=http://rubyquiz.com/]Ruby Quiz[/url] 是Ruby Talk邮件列表上的一个持续了很长时间活动,每周有一个小题目被提出来,然后大家进行解答讨论。Amazon上还有相关的书: [url=http://www.amazon.com/Best-Ruby-Quiz-Pragmatic-Programmers/dp/0976694077]Be...2008-03-25 16:23:32 · 240 阅读 · 0 评论 -
Shoes - 构建Ruby客户端程序的小工具
[url=http://shoooes.net/]Shoes[/url]是Ruby的跨平台GUI应用工具,最近[url=http://www.iteye.com/news/4426-shoes-2-release-ruby-39-s-cross-platform-gui-applications]发布了新版本[/url],它是一个非常有趣的Ruby GUI客户端,下面是一些特性介绍:1. ...2008-12-17 11:00:37 · 238 阅读 · 0 评论 -
用Ruby脚本抓取百度MP3新歌Top 100发布到闲聊
昨天和ouspec闲聊谈到可以用[url=http://www.iteye.com/wiki/JavaEye/1499-javaeye-api-help]JavaEye的闲聊api[/url]做些什么:[url]http://quake.iteye.com/blog/chat/1766[/url][quote]用JavaEye的闲聊API可以做什么?举例子:你可以注册一个账号,写个小程序从...2009-02-22 16:42:34 · 134 阅读 · 0 评论 -
Rails2.1 bug serialized 属性不能被dirty check
把Rails从2.0.2升级到了2.1,跑了一下JavaEye的单元测试代码,发现了一个很奇怪的错误:某个serialized 属性无法被持久化到数据库,经过一番查找,结果发现是Rails 2.1引入的partial update和dirty object check导致的bug:[url]http://rails.lighthouseapp.com/projects/8994/tickets...原创 2008-06-24 08:59:00 · 128 阅读 · 0 评论 -
Ruby每周一测 - 日期范围
Ruby每周一测 - [url=http://rubyquiz.com/]Ruby Quiz[/url] 是Ruby Talk邮件列表上的一个持续了很长时间活动,每周有一个小题目被提出来,然后大家进行解答讨论。Amazon上还有相关的书: [url=http://www.amazon.com/Best-Ruby-Quiz-Pragmatic-Programmers/dp/0976694077]Be...2008-09-22 22:29:14 · 156 阅读 · 0 评论 -
正则表达式如何替换不被某个标签包含的字符?
JavaEye提供了2种编辑器:bbcode和rich editor,用户使用bbcode编辑的文章在显示时候,需要将换行替换成HTML的br,代码很简单:[code="ruby"]text.gsub(/\n/, "")[/code]但是bbcode还提供了一个Code标签,能够用js高亮代码段,这个js要求被它包含的内容必需使用原始的换行(\n),这样需求就变成了:如何将...2008-09-12 11:04:59 · 498 阅读 · 0 评论 -
推荐一个数据库查询监控插件 - query_reviewer
在做性能优化的时候,我们经常会需要在用户界面和后台输出日志窗口之间来回切换,查看执行的sql语句,对于查询缓慢的语句再切换另外一个窗口,用数据库命令行执行explain。[url=http://github.com/dsboulder/query_reviewer/tree/master]Query Reviewer[/url]是一个能够帮助你减少窗口来回切换的插件。安装方法:1....2008-09-08 15:37:47 · 264 阅读 · 0 评论