2

如果您需要在您的网站中进行缓存以降低数据库的使用率,您是否必须使用memcachememcached(例如在 PHP 中)来做到这一点,或者您可以通过使用CloudFlareIncapsula或其他类似的专业服务来实现这一点做一些缓存为你?

4

2 回答 2

3

我是 CloudFlare 的 CEO,我想说:更多(智能)缓存几乎总是一件好事。虽然我们可以显着降低 Web 服务器的负载,但为了获得最佳性能,优化 Web 应用程序及其与数据库的交互仍然非常重要。为此,memcache 和其他快速缓存层可以发挥重要作用,我绝不会阻止它们。

PS - 我们在动态网站上工作得很好。我们 95% 以上的网站是高度动态的 Web 应用程序。

于 2011-12-15T06:55:41.947 回答
3

Cloudflare 等服务将您的 HTML 和/或资产(如图像和 CSS 文件)缓存在 CDN 中,从而减少对整个服务器的访问频率。这对于半静态站点非常有用,但可能不适合高度动态的站点。

像 memcached 这样的本地缓存只是以快速访问的方式存储任何数据。您可以使用它来缓存数据库查询并降低数据库活动,但您也可以使用它来存储预先计算的数据,这些数据在重新创建时会很昂贵,或者您可能希望非永久存储在快速访问方式。

两种解决方案都解决了不同的问题。您可以同时使用两者,或者两者都使用,或者两者都不使用。这实际上取决于您的瓶颈到底在哪里以及哪种解决方案更适合您的问题。

于 2011-12-15T04:15:14.800 回答