草庐IT

connection-pooling

全部标签

java - 为什么 DirContext.close() 不将 LDAP 连接返回到池中?

我注意到在使用LDAP连接池时,尽管有文档saying,但在上下文中调用close()似乎并未将其返回到池中otherwise.因此,当我尝试从池中获取已达到其最大大小的项目时,它会挂起。我设法将其缩小到最小范围。尽管我相信我正在确定性地对所有相关对象调用close(),但它似乎依赖于垃圾收集来实际将对象返回到池中,这是出乎意料的。为什么会这样?是否还有其他一些我应该关闭的对象?在下面的代码片段中:我人为地将最大池大小设置为1以突出问题。我从池中得到一个DirContext(第(2)行),尝试将它返回到池中(第(4)行),然后从池中得到另一个(第(6)行))应该返回相同的返回对象。相反

java - 我得到 java.net.SocketException : Permission denied: connect when sending an email in Jenkins

我的配置:Windows7机器Java7Jenkins1.511在本地帐户上作为服务运行我的jenkins.xml文件jenkinsJenkinsC:\ProgramFiles\IBM\SDP8.5\jdk\bin\java.exe-Xrs-Xmx256m-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle-jar"%BASE%\jenkins.war"--httpPort=8080-Djava.net.preferIPv4Stack=true我的hudson.tasks.Mailer.xml文件@example.com

java - DBCP2 - 何时从池中删除空闲连接

配置DBCP2池时,基于documentation我注意到-有一个名为timeBetweenEvictionRunsMillis的配置,描述为:Thenumberofmillisecondstosleepbetweenrunsoftheidleobjectevictorthread.Whennon-positive,noidleobjectevictorthreadwillberun.它的默认值为-1。这是否意味着逐出线程永远不会在默认配置下运行?那么配置参数maxIdle是如何强制执行的-如果空闲连接的数量大于maxIdle,池必须驱逐空闲连接。让我感到很困惑的是默认配置是空闲连接永

java - 那些以 "pool"开头的 java 线程是什么?

我的Tomcat服务器出现问题,无法正常关闭。我在发出关闭命令后进行了线程转储,它看起来像这样:http://pastebin.com/7SW4wZN9我认为不允许VM关闭的“可疑”线程是名为“pool-4-thread-1”的线程。其余的是守护线程或内部VM线程。在试图找出这个线程的用途时,我注意到还有其他Java程序创建了具有相似名称的线程(例如,JVisualVM创建了这样的线程)。所以我想知道是否有人知道这个线程是什么以及如何创建它。 最佳答案 这些线程可能是由您在代码中某处(直接或间接通过库)创建的ExecutorServ

java - hibernate : closing the session factory does not close the c3p0 connection pool

我最近开始在我的应用程序中使用hibernate和c3p0作为ORM。但是,当我关闭session工厂时,连接池并没有自行关闭!这是我的应用程序中也是唯一的地方,我可以在其中对session执行任何操作。StatelessSessionsession=null;Transactiontransaction=null;try{session=sessionFactory.openStatelessSession();transaction=session.beginTransaction();Listlist=session.getNamedQuery("getAvailableThin

java - 准备好的语句以及连接池

我对PreparedStatement和连接池的一般使用有疑问。PreparedStatements通常只绑定(bind)到一个连接。在我们的应用程序中,PreparedStatement在启动时创建并在稍后执行。如果在执行某些特定的准备语句时,与准备语句关联的连接正忙于执行其他语句,而不是执行此所需语句的方式。此语句将等待连接释放还是此语句将被优先执行?更新我已经通过使用Apachederby数据库跟踪SLEEP()函数来测试它,该数据库调用类TimeHandlingTest中的java函数sleep。CREATEFUNCTIONSLEEP()返回整数语言JAVA参数样式JAVA无S

java - Spring & Hibernate 的连接池

如何使用Spring和Hibernate配置连接池?谢谢地点 最佳答案 您可以使用DBCP组件com.project.domain.Domain1com.project.domain.Domain1${hibernate.dialect}${hibernate.show_sql}${hibernate.show_statistics} 关于java-Spring&Hibernate的连接池,我们在StackOverflow上找到一个类似的问题: https:/

java - Apache 米娜 : how to get the IP from a connected client

谁能告诉我如何从连接的客户端获取IP地址?目前我已经找到了session.getRemoteAddress().toString()并返回类似的东西/192.168.1.100:49879这样可以吗?我可以做一些只能返回192.168.1.100的事情吗?当我使用套接字时,我使用的是类似这样的东西:socket.getInetAddress().getHostAddress();在apachemina中使用IoSession有类似的东西吗? 最佳答案 将getRemoteAddress()返回的SocketAddress向下转换为I

java - Redshift 和 Postgres JDBC 驱动程序都拦截 jdbc ://postgresql connection string

我有一个不太确定如何解决的问题:我有一个Web应用程序(打包为war),客户端可以配置他们希望指向的数据库。我们支持PostgreSQL和Redshift(以及其他)。JDBC4驱动程序会自动加载,这很好。问题是:看来RedshiftJDBC驱动程序会先于PostgreSQL响应jdbc://postgresql连接字符串。这会在连接到PostgreSQL数据库时导致JDBC错误。我在我的pom.xml中将驱动程序名称“org.postgresql.Driver”指定为数据源的驱动程序,但我不确定springJDBC模板如何选择驱动程序(除非它选择第一个处理程序)。还有其他人遇到过此类

java - JDBC 基本概念,池和线程

我一直在单线程环境下使用JavaSE中的JDBC。但是现在我需要使用连接池并让许多线程与数据库(MSSQL和Oracle)进行交互,我很难尝试做到这一点,因为我似乎缺乏对api的一些基本理解。连接并记录Connection后的AFAIK表示到数据库的物理tcp/ip连接。它创建Statement(s),可以将其视为通过Connection与数据库的SQL交互。事务和回滚从何而来?它是在Connection还是Statement级别。“一个”Connection创建N条语句并将其提供给不同的线程以便让每个线程都拥有该Statement的使用是否安全?如果没有,在配置池之后是这样的:Ora