我是 rails 及其生态系统的新手,我正在 nginx/passenger 上部署一个 rails 4 应用程序,配置为访问远程 postgres 数据库。当用户第一次访问应用程序时,它会遇到错误,但后续访问会成功,至少对于给定的会话是这样。这是错误:
I, [2013-10-03T16:51:31.826577 #6972] INFO -- : Processing by ProvisionedInstancesController#index as HTML
E, [2013-10-03T16:51:31.831507 #6972] ERROR -- : PG::UnableToSend: SSL SYSCALL error: EOF detected
: SELECT COUNT(*)
FROM pg_class c
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind in ('v','r')
AND c.relname = 'provisioned_instances'
AND n.nspname = ANY (current_schemas(false))
I, [2013-10-03T16:51:31.831832 #6972] INFO -- : Completed 500 Internal Server Error in 5ms
我还没有遇到任何真正让我很好地理解可能是什么问题的东西。根据日志,进入控制器和 postgres 错误之间只经过了大约 5 毫秒,所以我不确定这实际上是超时问题。其他一些搜索结果表明这可能是连接池问题,但我在第一次访问应用程序时看到了这个错误,所以我认为此时甚至没有机会建立多个连接?(我的 database.yml 使用连接池的默认大小 5)。
过去一天我一直在谷歌搜索和试验,在这一点上我很困惑。