远程数据库->响应时间大幅增加?

时间:2014-03-31 作者:no6

我有运行最新WordPress的nginx web服务器和运行MySQL 5.6的DB服务器,这两台服务器之间大约有90-100ms的延迟(往返延迟)。

问题是,如果我远程访问DB,从web服务器获得响应大约需要5000毫秒。(连接通过SSL加密)

相比之下,如果我在本地访问MySQL(web服务器和MySQL安装在一台机器上),大约需要200毫秒。

1、为什么?是因为WP每页有多个MySQL查询,并等待每个查询完成吗?因此加起来是:100+100+100+100=5000毫秒?

2、能否将WP修改为异步从MySQL请求,以减少请求成功的等待时间?

谢谢。:)

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

90-100ms往返时间+准备SQL语句的时间+执行语句的时间+返回结果的时间乘以您需要查询数据库的次数。

当然,连接可能会保持打开状态,但这本身就是一件昂贵的事情。

考虑到某些设置可以在不到100毫秒的时间内完全响应,更不用说数据库连接了,如果不是在同一台机器上,而是在非常靠近的地方,那么应该考虑将数据库和服务器放在同一个位置。

WordPress的具体帮助包括:

对象缓存数据库查询缓存更少的SQL查询使用瞬态存储昂贵操作的结果您可以使用查询监视器插件等工具查看SQL查询的执行情况和查询速度

结束

相关推荐

在unctions.php中运行MySQL代码后出现成功或错误消息

就本文而言,假设有一段代码要在我的WordPress函数上运行。php文件。这是在我的数据库中删除mysql表的代码。例如,下面是代码:$wpdb->query( \" DELETE FROM $wpdb->posts WHERE anything = \'whocares\' \" ); 代码正常,但我想在运行代码后显示成功或失败的消息。我还有一个代码,显示运行后的成功消息,如下所示:function remove_contributors() {