Windows 上的 libpq 速度

Posted

技术标签:

【中文标题】Windows 上的 libpq 速度【英文标题】:Libpq speed on windows 【发布时间】:2010-11-06 22:17:06 【问题描述】:

我在 Windows 上遇到了 libpq 问题。连接到数据库并运行“select * from some_table;”很慢。

该表只有 1800 行,7 列。没有斑点等。

查询大约需要 3500 毫秒,在 linux 中大约需要 800 毫秒。 (大约 500 毫秒是网络时间,服务器在我所在位置的世界另一端。)

硬件相同(双启动)

为什么在 Windows 中会这么长?我在 pqsl 和 pgadmin 中进行了测试,以排除应用代码中的错误。

有什么建议或线索吗?

【问题讨论】:

你能告诉我们在 Windows 机器和 Linux 机器上 psql、pgadmin 的时间吗?您能否在两个位置上使用 Jython 测试您的两个位置(例如您可以查看的代码:***.com/questions/1102704/…)? 是的,在 pgadmin 中的 windows 上为 3500ms,在 pgadmin 中的 linux 上为 800ms。进一步的测试表明是windows xp有问题。从机器复制到 windows 客户端的文件也比在 linux 客户端上花费的时间长约 5 倍。 查看此链接了解更多信息:technet.microsoft.com/en-us/magazine/2007.01.cableguy.aspx 【参考方案1】:

我敢打赌,真正的问题是防病毒软件出现问题。的确,Windows 上的 PostgreSQL 可能不如 Linux 上的性能好,但您看到的差异不能简单地与多进程和多线程之间的差异(写入时复制等)有关。

首先要做的是排除防病毒软件等原因。因为该软件位于磁盘 I/O 的读取和写入之间,所以它能够使您的磁盘 I/O 显着变慢。此外,如果它足够慢,它可能会使顺序磁盘 I/O 性能更像是随机磁盘 I/O,这不是一件好事。因此,请尝试关闭您的防病毒软件(最好不要连接到网络)。

我要看的第二件事是文件系统碎片。这些文件是否严重碎片化?如果是这样,磁盘 I/O 也会更加昂贵。除此之外,进行干净启动、手动启动服务并再次尝试此操作可能会排除干扰磁盘 I/O 的其他程序。

一旦你解决了问题,那么想出解决方案应该很简单。

【讨论】:

以上是关于Windows 上的 libpq 速度的主要内容,如果未能解决你的问题,请参考以下文章

XAMPP 在 Windows 上的 PHP 运行速度太慢了 100 倍

与 Libgit2 相比,Windows 上的 Git 存储速度极慢

zabbix 结合windows性能监控工具perfmon进行监控

ubuntu下载的速度很慢怎么办

在 Windows 10 上找不到 pg_config 可执行文件

为什么同时运行VSCode可以显着提高Windows服务器上的Node.js性能?