Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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
Postgresql 对于AWS Linux 2,Postgres 10内部Docker与裸机的查询速度较慢_Postgresql_Performance_Amazon Web Services_Docker - Fatal编程技术网

Postgresql 对于AWS Linux 2,Postgres 10内部Docker与裸机的查询速度较慢

Postgresql 对于AWS Linux 2,Postgres 10内部Docker与裸机的查询速度较慢,postgresql,performance,amazon-web-services,docker,Postgresql,Performance,Amazon Web Services,Docker,出于可移植性的原因,我一直试图在Docker中部署Postgres,并注意到与裸机相比,“解释分析”所测量的查询性能慢得令人痛苦 对于一个有170万行的表,对裸机postgre的查询大约需要1.2秒,而对停靠postgre的查询需要4.8秒,增加了4倍对于裸机和Docker(对于Docker,我使用的是-v选项),该比较是在相同的安装卷上完成的。该卷是一个gp2卷,通过AWS控制台安装,60GB 我试过几件事: 增加postgresql.conf中的共享内存缓冲区选项,其效果可以忽略不计 尝试了

出于可移植性的原因,我一直试图在Docker中部署Postgres,并注意到与裸机相比,“解释分析”所测量的查询性能慢得令人痛苦

对于一个有170万行的表,对裸机postgre的查询大约需要1.2秒,而对停靠postgre的查询需要4.8秒,增加了4倍对于裸机和Docker(对于Docker,我使用的是
-v
选项),该比较是在相同的安装卷上完成的。该卷是一个gp2卷,通过AWS控制台安装,60GB

我试过几件事:

  • 增加postgresql.conf中的共享内存缓冲区选项,其效果可以忽略不计
  • 尝试了几个卷映射选项(委派、缓存、一致)
  • 将Docker从17.06-ce升级到17.12-ce
  • 这一切都是在AWSLinux2实例中完成的。在这一点上,我希望得到更多关于如何提高性能的建议

    我使用的docker run命令:

    docker run -p 5432:5432 --name postgres -v /vol/pgsql/10.0/data:/var/lib/postgresql/data postgres:latest
    

    您正在使用哪个Docker存储驱动程序?如果您不确定,请发布
    docker info
    的输出。如果Docker配置为在环回设备上使用devicemapper驱动程序,这可能解释了一些性能下降的原因。因此,我运行了
    docker info
    ,这是我得到的存储驱动程序
    存储驱动程序:overlay2备份文件系统:xfs支持d_类型:true Native Overlay Diff:true
    我假设这不是devicemapper?谢谢