Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法填充池(没有可用的缓冲区空间)_Java_Mysql_Hibernate_Transactions_Wildfly 8 - Fatal编程技术网

Java 无法填充池(没有可用的缓冲区空间)

Java 无法填充池(没有可用的缓冲区空间),java,mysql,hibernate,transactions,wildfly-8,Java,Mysql,Hibernate,Transactions,Wildfly 8,我使用的是Wildfly 8.2,当打开某个网页时,会触发一系列DB请求。所有查询都通过JPA Criteria API调用,按预期返回结果,但没有一个查询会发出警告、错误或异常。这一切都是并行运行的 现在,我注意到在2到3天内,出现了以下错误,站点变得没有响应。我重新启动,大约再等3天,直到它再次发生(取决于我的请求数量) 我检查了linux服务器上的tcpsndbuf,发现它一直处于最大值,除非我重新启动Wildfly。显然,它无法释放连接。 连接由JPA/Hibernate和Wildfl

我使用的是Wildfly 8.2,当打开某个网页时,会触发一系列DB请求。所有查询都通过JPA Criteria API调用,按预期返回结果,但没有一个查询会发出警告、错误或异常。这一切都是并行运行的

现在,我注意到在2到3天内,出现了以下错误,站点变得没有响应。我重新启动,大约再等3天,直到它再次发生(取决于我的请求数量)

我检查了linux服务器上的tcpsndbuf,发现它一直处于最大值,除非我重新启动Wildfly。显然,它无法释放连接。

连接由JPA/Hibernate和Wildfly容器管理。我不做任何特殊或定制的交易处理,例如打开、关闭。等等,我把一切都留给Wildfly

我使用的MySQL驱动程序是5.1.21(MySQL-connector-java-5.1.21-bin.jar)

在standalone.xml中,我定义了以下数据源数据源值(以及其他值):

TRANSACTION\u READ\u COMMITTED
3.
10
32
真的

尝试添加此Hibernate属性:

<property name="hibernate.connection.release_mode">after_transaction</property>
交易后的


默认情况下,这对于大多数用例是不可取的。大多数驱动程序无论如何都不允许在多个XA事务上多路复用连接。

您使用openvz吗?我认为这个问题应该在服务器故障时提出。它与linux配置有关。您可以阅读:。您应该数一数打开的插座并检查状况:

否。我使用了Paralles电源板。没有任何帮助。hibernate发布模式和mysql驱动程序更新都不起作用。Parallels Power Panel是基于web的openvz容器管理工具Nope。这没有帮助。它以同样的方式生长。我还替换了mysql驱动程序,但没有成功。
<property name="hibernate.connection.release_mode">after_transaction</property>