Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.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 DataSource.getConnection在Linux上非常慢,但不使用windows_Java_Mysql_Linux_Tomcat - Fatal编程技术网

Java DataSource.getConnection在Linux上非常慢,但不使用windows

Java DataSource.getConnection在Linux上非常慢,但不使用windows,java,mysql,linux,tomcat,Java,Mysql,Linux,Tomcat,我正在使用Java和axis2框架开发一些web服务。这个应用程序应该在Ubuntu8.04上的Tomcat5.5下运行,所以我用这些版本设置了testserver 当我在我的windows机器上本地开发时,从web服务调用获得响应大约需要50毫秒。如果我在Linux机器上部署相同的应用程序(我已经尝试了ubuntu机器和运行arch Linux的机器),第一次web服务调用大约需要20秒 我已经做了一些故障排除,并得出结论,我的DataSource.getConnection调用第一次大约需要

我正在使用Java和axis2框架开发一些web服务。这个应用程序应该在Ubuntu8.04上的Tomcat5.5下运行,所以我用这些版本设置了testserver

当我在我的windows机器上本地开发时,从web服务调用获得响应大约需要50毫秒。如果我在Linux机器上部署相同的应用程序(我已经尝试了ubuntu机器和运行arch Linux的机器),第一次web服务调用大约需要20秒

我已经做了一些故障排除,并得出结论,我的
DataSource.getConnection
调用第一次大约需要9秒,之后每次大约需要5秒。如果我启用连接池,当然会在第一次呼叫后加快我的呼叫速度(因为连接已保存),之后的呼叫也需要50毫秒,这很好,但我希望有一个更强大的解决方案来增加连接池的数量。真正困扰我的是,这在我的windows机器上运行得很好,但在使用Linux时会出现问题

有没有人能给我指出一个问题的方向?我的tomcat日志中没有错误

使用Ubuntu 8.04 MySql 5.0.83 Tomcat 5.5.27 爪哇6
Axis2 1.2(也尝试了1.6)

是否检查了网络配置文件?Linux、Windows、数据库盒是否在同一网络中(路由、防火墙、延迟等)?对我来说,这听起来像是一个网络问题……当使用命令行MySQL客户端时,连接时间是什么样的?连接时间取决于服务器响应所需的时间。Linux、Windows和数据库位于不同的计算机上,但在同一网络中。使用mysql-h连接大约需要5秒钟。我知道Oracle如果设置了
-Djava.security.egd=file:/dev//uradom
,它会加快连接速度,Tomcat也会加快连接速度。请参见熵源部分的。