java - Cassandra Datastax 连接池监视器/指标

标签 java cassandra connection-pooling datastax-java-driver

我的团队正在从使用 Astyanax 驱动程序(如果尚未弃用,则很快就会弃用)转向使用 Datastax 3.0 驱动程序。

我们的代码实现了 Astyanax 的 ConnectionPoolMonitor 类,并且我们捕获了有关连接池使用情况的大约 22 个不同的指标。

我正在尝试找到一种等效的方法来使用 Datastax 驱动程序执行此操作。但我能找到的只有这个: https://datastax.github.io/java-driver/manual/pooling/#monitoring-and-tuning-the-pool

基本上,上面的示例展示了如何运行连续轮询 Session.State 的后台线程。这看起来相当尴尬。 Astyanax 对实现 ConnectionPoolMonitor 的类进行回调。

Session.State 中公开的信息量相当有限:已连接的主机、正在进行的查询、打开的连接和已废弃的连接。

有没有更好的选择,我还没有找到?我如何捕获诸如此类的指标:

  • 池耗尽、连接超时、套接字超时、没有主机的计数
  • 创建、关闭、借用、返回、创建错误的连接计数
  • 添加、删除、关闭、重新激活/重新连接的主机数量
  • 未知错误、错误请求、中断、传输错误的异常计数

最佳答案

关于java - Cassandra Datastax 连接池监视器/指标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36797418/

相关文章:

Java - 我可以使用 JarURLConnection 来执行 jar 类吗?

java - Kotlin Mockito 总是返回作为参数传递的对象

java - 使用 QoS 2 进行发布的发布者获得代理或订阅者的确认

cassandra - 我可以在 docker 容器中运行多少个 cassandra 节点?

Cassandra:低可用性以获得更高的一致性

java - 连接未返回 tomcat 池

java - 在jboss 7中为Activemq配置池连接jndi

java - ThreadPoolExecutor 中的死锁

java - 池化数据库连接没有立即使用的情况叫什么?

sql - NoSQL:如何根据纬度和经度检索 'house'?