Php 是否有可能获得<;使用Drupal的200ms响应(无缓存)?
简单地说,问题就在标题中。可能吗 到目前为止,我对脚本语言的经验是,为了提高性能,您需要缓存所有内容,然后只为生成的HTML文件提供服务 对于某些用例来说,这是可以的,但是当您确实需要实时生成新页面时,这是不可能的 Drupal渲染某些网页(PHP执行时间,而不是DB)最多需要3秒(或更长!)。那太疯狂了。完全疯了 如果很多项目(比如Facebook)都在使用PHP,那么问题显然是我的。但谷歌搜索这个问题表明它很普遍。太普通了 (当然,我为PHP安装了APC。这当然有帮助,但PHP仍然非常慢) 我必须假设这是Drupal/PHP的现实吗Php 是否有可能获得<;使用Drupal的200ms响应(无缓存)?,php,performance,drupal,caching,Php,Performance,Drupal,Caching,简单地说,问题就在标题中。可能吗 到目前为止,我对脚本语言的经验是,为了提高性能,您需要缓存所有内容,然后只为生成的HTML文件提供服务 对于某些用例来说,这是可以的,但是当您确实需要实时生成新页面时,这是不可能的 Drupal渲染某些网页(PHP执行时间,而不是DB)最多需要3秒(或更长!)。那太疯狂了。完全疯了 如果很多项目(比如Facebook)都在使用PHP,那么问题显然是我的。但谷歌搜索这个问题表明它很普遍。太普通了 (当然,我为PHP安装了APC。这当然有帮助,但PHP仍然非常慢)
谢谢。简短的回答是“否”。但您为什么不想缓存 “实时生成新页面”是什么意思?经过身份验证的用户(任何登录的用户)都可以立即看到新内容。匿名用户可能需要等待一段时间(例如,如果您正在使用Boost),但是,您可以随时控制它,或者在添加新内容时刷新它。应该尽可能多地缓存 您可以安装Boost(静态HTML文件)、Memcache和启用Drupal缓存。这是值得鼓励的,尤其是最后一次。您还可以在服务器上运行nginx 您也可以尝试使用Pressflow,这是Drupal的替代品,可以提供更好的性能 这件事已经讨论过很多次了。。如果你愿意,你可以让Drupal非常快。查看一些2比特的文章:
利用可用的缓存方法将帮助您保持较低的托管成本,而不是在未优化的网站上投入更多硬件。正如您所说,Facebook使用PHP,他们显然有理由需要良好的性能。他们的解决方案是为PHP编写自己的编译器,名为,并以开源形式发布。如果您担心PHP的性能,您应该尝试一下,因为它肯定会提高性能 缺点是它(还)没有覆盖100%的PHP函数集,因此一些PHP程序可能无法编译。我不知道Drupal在这方面的适用性,但值得一试——进行测试编译不会有任何损失;如果它不起作用,你就不会失去任何东西
类似地,Drupal社区中有一个项目将Drupal核心的一部分转换为PHP扩展,这意味着一些关键的Drupal函数将作为编译代码内置到PHP运行时。看。但请注意,这仍处于相当早期的开发阶段:它仍然被列为实验性的,并且只涵盖了少量的函数。不过,可能值得关注该项目。根据,是的,使用Drupal无需缓存,您可以获得<200ms的响应时间。我从一些朋友那里收到的关于Drupal加载性能的提示是安装不到40个模块 超过40个,特别是如果那些contrib模块使用了太多的挂钩和内存,那么性能就会降低 其他提示:
- 删除生产站点上的
和imagecache ui
视图ui
- 如果可能,将
置于htaccess
上,这样启动时只调用一次vhost.conf
htaccess
- 使用油门模块
- 对所有html、css和js文件使用gzip
- 使用cdn模块和amazon服务器解决方案
- 对站点的某些部分或块使用ajax
- 最后,如果有足够的预算,迁移到oracle