Java MySQL 5.5.44“;本地的;比停靠的MySQL 5.5.44快32%
我将MySQL 5.5.44本机安装在一个具有许多内核、SSD等的Lenovo X6机箱上。/var/lib/MySQL与SSD上的dir进行了符号链接 我还有一张docker 5.5.44的图片。图像以以下方式启动:Java MySQL 5.5.44“;本地的;比停靠的MySQL 5.5.44快32%,java,mysql,docker,Java,Mysql,Docker,我将MySQL 5.5.44本机安装在一个具有许多内核、SSD等的Lenovo X6机箱上。/var/lib/MySQL与SSD上的dir进行了符号链接 我还有一张docker 5.5.44的图片。图像以以下方式启动: sudo docker run --name buzz-mysql0 -v /data/2/mysqlvarlib/0:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=password -p 24000:3306 -d mysql:5.5 如您所见,
sudo docker run --name buzz-mysql0 -v /data/2/mysqlvarlib/0:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=password -p 24000:3306 -d mysql:5.5
如您所见,/var/lib/mysql是从容器映射到SSD上主机的卷。与本机MySQL相同的SSD。主机可以在端口24000上与此实例通信
这两个实例都是现成的。无特殊配置选项、调谐等
我有一个小Java程序,它在一个紧密循环中运行,带有autoCommit(false)/commit()包装器,并插入6列短字符串和2个日期。它使用mysql-connector-java-5.1.36-bin.jar。在端口3306(本机)上运行MySQL,它以每秒5000次插入的速度运行。 在端口24000上运行MySQL,该端口是停靠的映像,它仅以每秒3400次插入的速度运行。这大约要慢32%。一次只运行一个测试,结果不会发生变化
我希望这是一个调整的问题,而不是卷映射或端口转发,这是造成缓慢。如果速度慢10%,我可能不在乎,但32%有点高。我认为这个问题更适合,当然,在路由方面会有额外的开销。你的测试似乎是专门用来衡量这一点的。这是一个真实的应用程序负载吗?差不多,是的。对多个MySQL进行批量加载,这些MySQL位于一个盒子上,但位于不同的端口。再说一次,我并不惊讶它的速度会慢一些。32%似乎有点多,但如果这可以从路由的具体情况(即独立于docker本身)来解释的话,那就这样吧。我认为这个问题更适合,当然,在路由方面会有额外的开销。你的测试似乎是专门用来衡量这一点的。这是一个真实的应用程序负载吗?差不多,是的。对多个MySQL进行批量加载,这些MySQL位于一个盒子上,但位于不同的端口。再说一次,我并不惊讶它的速度会慢一些。32%似乎有点多,但如果这可以用路由的细节来解释(即独立于docker本身),那么就这样吧。