Apache Druid Java 查询客户端虚拟线程下的连接泄漏分析与解决 大家好,今天我们来探讨一个在 Apache Druid Java 查询客户端中使用连接池时,特别是在结合虚拟线程的情况下,可能遇到的一个棘手问题:连接泄漏。更具体地说,我们会分析一种情况,即连接池没有达到最大容量,但仍然发生了连接泄漏,并且涉及到 DruidPooledConnection 和 VirtualThreadLocal 的关系。 一、问题背景:Druid Client、连接池与虚拟线程 首先,我们简单回顾一下涉及到的几个关键组件: Apache Druid: 一个高性能的列式存储、实时分析数据库。 Druid Java Client: 用于从 Java 应用程序查询 Druid 的客户端库。通常,它会使用连接池来管理与 Druid 集群的连接,以提高性能和资源利用率。 Druid连接池: Druid Java Client 内部使用的连接池,负责管理到 Druid 集群的数据节点连接。它维护着一个连接池,允许应用程序重复使用现有的连接,而不是每次查询都建立新的连接。 虚拟线程 (Virtual T …
继续阅读“Apache Druid Java查询客户端连接池在虚拟线程下遇到连接泄漏但连接池未满?DruidPooledConnection与VirtualThreadLocal持有”