【问题标题】:Can Octopus keep a pool of database connections?Octopus 可以保留一个数据库连接池吗?
【发布时间】:2013-05-30 22:08:26
【问题描述】:

我们在rails2.3/postgresql/resque 应用程序中转而使用 Octopus 进行分片,因为我们的数据库服务器的磁盘 I/O 已达到极限。我们有十个数据库,每个数据库都有多个分片。 (分片包含模式搜索路径)。

我们的一些跨多个客户工作的流程非常缓慢。

代码结构如下:

User.each do |u|
  Octopus.using(u.shard.to_sym) do
     update data
  end
end

我们怀疑问题在于 Octopus 不断打开和关闭数据库连接。

这就是八达通的运作方式吗?它可以保留一个数据库连接池吗?

【问题讨论】:

    标签: ruby-on-rails ruby postgresql octopus


    【解决方案1】:

    ar-octopus 0.3.4 中可能存在错误。它已通过以下提交修复:

    https://github.com/tchandy/octopus/commit/0c71fa228c3a9d659482a0dee8be5b4bd47493eb

    唯一的改变是从 self.using 中删除“hijack_initializer”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-16
      • 2012-06-03
      • 1970-01-01
      • 2014-04-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多