返回

如何更简单地使用 ActiveRecord::Base.connection.reconnect?

发布时间:2022-08-13 15:34:54 261
# 数据库# git# github# 数据

我尝试改进一些 api 响应,通过解决它们,我使用并行 gem。我遇到了一个关于重新连接方式的问题。

我提到了https://github.com/grosser/parallel 我使用了 ActiveRecord::Base.connection.reconnect!但它不起作用,这是 DB 连接断开的原因

我的数据库组成是 1 个主要和 4 个副本

下面是我的源代码示例,它正在工作。我希望需要更简单灵活的重新连接部分的方式

def hohoge

  resulted_search = Parallel.map(search_keywords, in_processes: 4) do |keyword|

    reconnection

    request_third_party_to_get_search  → heavy logic  

  end

  reconnection

end

def reconnection

  ActiveRecord::Base.using(:replica1).connection.reconnect!

  ActiveRecord::Base.using(:replica2).connection.reconnect!

  ActiveRecord::Base.using(:replica3).connection.reconnect!

  ActiveRecord::Base.using(:replica4).connection.reconnect!

  ActiveRecord::Base.using(:master).connection.reconnect!

end

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像