Tumayun's Blog

Blog.new('tumayun').render

Resque 数据库链接错误

| Comments

  最近项目用的 Resque 老是会有一些莫名其妙的问题,非常头疼!

1
Mysql::Error: MySQL server has gone away: SHOW FIELDS FROM `deals`

实在是没办法了,然后仔细的去阅读了下 Resquewiki,有种恍然大悟的感觉。 原来我遇到的问题大家都遇到过,并且给出了解决方案,就拿 Resque 数据库链接错误来说,Resque 原作者已经有了推荐的解决方案,原文如下:
  If your workers remain idle for too long they may lose their MySQL connection. If that happens we recommend using this Gist.
  然后我在项目 config/initializers 目录中的 resque.rb 文件中加入代码:

1
2
3
Resque.after_fork do |job|
  ActiveRecord::Base.connection_handler.verify_active_connections!
end

问题就这样解决了!但是,引入一个 Gem,我连文档都没有仔细阅读,匆匆使用了事,现在想想真的很惭愧! 以后引入 Gem 最起码要将文档通读一边,有能力更应该通读源码!
谨记!

Comments