如何让服务器对搜索结果的响应更快(WP,nginx,apc)

如何让服务器对搜索结果的响应更快(WP,nginx,apc)

我在云中拥有自己的虚拟服务器,运行 nginx 和 APC。在此服务器上,我有一个使用 W3TC 插件的 wordpress 博客。我已使用 APC 启用页面缓存和对象缓存。

当访问首页、页面和帖子时,服务器的响应几乎是即时的。但当进行搜索时,响应需要 1 秒钟。

我想知道是否可以加快响应速度。

使用 Debug Queries WP-plugin,我分析了搜索 SQL 查询,仅需 0.002 秒即可完成。根据 W3TC 的说法,大多数对象都被缓存了。事实上,Debug Queries 插件给出了以下搜索结果报告:

    Total query time: 0,01482s for 120 queries.
    Page generated in 0,00000s, 0,00% PHP, 0,00% MySQL

看起来页面生成得非常快。但服务器的响应仍然需要 1 秒钟才能完成。

尽管页面生成得很快,我怎样才能找出导致响应时间过长的原因?

注意:我只谈论服务器的响应时间,而不是在浏览器中生成页面所需的时间。

以下是一个例子来自我的网站的搜索结果

这是我当前的 php-fpm 配置:http://snipt.org/AiHg7

    # tail /var/log/php5-fpm.log

    [05-Oct-2013 20:20:04] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 0 idle, and 8 total children
    [07-Oct-2013 10:44:55] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 0 idle, and 7 total children
    [08-Oct-2013 10:20:05] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 0 idle, and 7 total children

    # ps aux | grep php
    root      1251  0.0  0.1 398732  1328 ?        Ss   May28   6:38 php-fpm: master process (/etc/php5/fpm/php-fpm.conf)      
    www-data 15678  0.0  1.9 458804 20296 ?        S    Jul17   0:13 php-fpm: pool www                                         
    www-data 18337  3.5  9.5 411072 98300 ?        S    14:15   0:57 php-fpm: pool www                                         
    www-data 18732  2.6 10.9 426648 112268 ?       S    14:20   0:34 php-fpm: pool www                                         
    www-data 19504  3.4  9.4 415556 97088 ?        S    14:30   0:24 php-fpm: pool www                                         
    root     20433  0.0  0.0   7548   828 pts/0    S+   14:41   0:00 grep php

答案1

安装和配置并在您的 WordPress 博客前使用它。

答案2

考虑使用搜索插件。Sphinx 搜索应该可以为您带来 <1 次搜索。

http://wordpress.org/plugins/wordpress-sphinx-plugin/

WordPress Sphinx 搜索插件允许使用 Sphinx 搜索服务器的功能在基于 WordPress 的网站上实现超快速且功能丰富的搜索。

http://sphinxsearch.com/

Sphinx 是一款开源全文搜索服务器,从设计之初就充分考虑了性能、相关性(即搜索质量)和集成简易性。它使用 C++ 编写,可在 Linux(RedHat、Ubuntu 等)、Windows、MacOS、Solaris、FreeBSD 和其他一些系统上运行。

相关内容