Ruby + Sequel + Sinatra + MySQL 连接问题

Ruby + Sequel + Sinatra + MySQL connection issues

您好,有一个内置于 ruby、sinatra 和 sequel 的简单网络应用程序连接到 mysql 数据库。我正在使用

Ubuntu 14.04.3 LTS ruby 2.0.0 gem 'sinatra', '1.4.5' gem 'slim', '2.0.3' gem 'sequel', '4.38.0' mysql Ver 14.14 Distrib 5.5.54,用于 debian-linux-gnu (x86_64) 使用 readline 6.3

我遇到一个问题,即在访问应用程序的不同部分时应用程序失败并抛出状态为 500 的随机错误(存在错误,因为在尝试几次后它起作用了)。我怀疑 Sequel + Mysql 有问题。该应用程序运行了一段时间,然后停止运行,然后又自行运行。

我知道没有太多描述,但我一无所知。有什么想法吗?

如果您在您的 Unicorn 配置中使用 preload_app,但没有在 fork 之前断开 Sequel 的数据库连接,这可能会导致您看到的错误。我认为 Sequel 和 Unicorn 的文档都解释了这个问题:

https://bogomips.org/unicorn/Unicorn/Configurator.html http://sequel.jeremyevans.net/rdoc/files/doc/code_order_rdoc.html#label-Disconnect+If+Using+Forking+Webserver+with+Code+Preloading