gpt4 book ai didi

java - 如何使用心跳?

转载 作者:可可西里 更新时间:2023-11-01 09:14:21 25 4
gpt4 key购买 nike

Mongodb Java 驱动程序最近(在版本 2.12 中)向 MongoClientOptions.Builder 类添加了以下方法:

  • heartbeatConnectRetryFrequency(int heartbeatConnectRetryFrequency)
  • heartbeatConnectTimeout(int heartbeatConnectTimeout)
  • 心跳频率(int heartbeatFrequency)
  • heartbeatThreadCount(int heartbeatThreadCount)

根据 this bug,看起来这些方法公开了 MongoDB Java 驱动程序将尝试重新生成连接池的属性,以防驱动程序连接池中的连接由于网络中断或 mongodb-server 重启而失效。

关注的javadocs我已经看过了并在网上搜索,但找不到任何详细的示例或解释如何使用它们的好文章。

这里有人知道如何使用这些属性吗?

最佳答案

这些字段的描述在 MongoClientOptions 的 javadoc 中给出。如下:

  • heartbeatConnectRetryFrequency(int heartbeatConnectRetryFrequency):
    • 这是当 MongoClient 连接到的每个 MongoDB 服务器当前无法访问时,后台线程将尝试连接到该服务器的频率。
  • heartbeatConnectTimeout(int heartbeatConnectTimeout):
    • 这是监视 MongoClient 连接到的每个 MongoDB 服务器的后台线程使用的套接字的套接字连接超时。
  • heartbeatFrequency(int heartbeatFrequency):
    • 这是后台线程尝试连接到 MongoClient 连接到的每个 MongoDB 服务器的频率。
  • heartbeatThreadCount(int heartbeatThreadCount):
    • 这是将用于监视 MongoClient 连接到的 MongoDB 服务器的线程数。

我的一些观察

  • 这些方法在 v2.12.2 中成为 mongodb java driver api 的一部分。
  • 根据我的测试代码,
    • 在 v2.12.2 之前,mongodb-java-driver 无法从 mongodb-server 重启中恢复
    • 在 v2.12.2 中,服务器重启后的第一次调用失败,所有后续调用都会通过(即,mongodb-java-driver 从服务器重启中恢复,但带有 this bug
    • 上述错误已在 v2.12.3 中修复,截至撰写此答案之日尚未发布。

关于java - 如何使用心跳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24764314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com