我有一台 Web 服务器,用于托管我的 PHP Web 应用程序和 MySQL 服务器。我想再放一台机器在那里用于 memcache/memcached。为了使用 Memcache,我应该有一个负载均衡器吗?或者我只是使用我的 apache Web 服务器指向它?我需要有人来解释这个问题,并让我了解我需要做什么才能使用 Memcached 来提高我的 Web 应用程序性能。
多谢 :)
答案1
以下内容是基于意见的,但已证明对我来说非常有效 YMMV:
如果您只有一个网络服务器,我会坚持使用 APC(也可以为您缓存数据),拥有 memcache 的最大好处是多服务器环境可以共享会话和缓存数据(而不会给数据库带来更多负载)。
如果您要设置另一台机器,我会将您的数据库拆分到另一台服务器,并放在防火墙后面,或者以某种方式将其与外界隔离。将该机器设置为能够快速处理读写操作,并有足够的内存用于内部数据库缓存。
只有当您转移到多 Web 头环境时,我才会使用 memcached,然后是的,您可能有一个负载均衡器,尽管 nginx 设置可以为您做到这一点,所以您不需要硬件负载均衡器。
在做任何事情之前,我会设置一个尽可能与生产环境相匹配的开发环境,然后使用类似测试仪对其施加高于预期的负载以验证它是否能满足您的应用需求。
高血压
答案2
安装 memcache 非常简单。lullabot.com/articles/installing-memcached-redhat-or-centos http://docs.webfaction.com/software/memcached.html
addmoremem.blogspot.com/2010/09/running-multiple-instances-of-memcached.html上有很好的入门指南
您的应用程序需要具备 memcache 意识才能使用其功能。