2010-11-03 96 views
1

我选择来存储我的内存缓存中的会话,它运作良好....最近我们有过太多的活跃用户......所以我们必须用我们的应用程序的数目进行限制。要做到这一点我用多个memcache实例?

$ memcache-> getStats();并根据['curr_items']的数量,我让用户进入应用程序或不。

问题是我现在意识到,我想用内存缓存来存储一些经常运行查询....这显然会打破我的计算活动会话的方法......所以我可以运行多个实例的memcache一个...为会议,一个为其他所有....这样做有缺点吗?

回答

0

您可以在不同端口上运行不同的内存缓存实例,并将其用于任何你想要的目的。在处理多个Memcache实例时,性能开销很小。只需使用不同的连接参数实例化另一个Memcache对象。

但是它似乎,您使用计数的非常奇怪的方法,限制你的用户。如果您在更合适的地方使用Memcache,您将能够支持更多的活跃用户。毕竟,这是使用Memcache的正确方法。

0

我选择来存储我的会话内存缓存中

...

$ memcache-> getStats();并根据['curr_items']的数量,我让用户进入应用程序或不。

为什么不直接理清选择memcached进行会话存储的原因,并为会话使用更具扩展性的衬底?

+0

你能否详细说明,什么是错的会话存储在memcahced?我已经阅读了许多积极的事情...像这里http://www.dotdeb.org/2008/08/25/storing-your-php-sessions-using-memcached/ – Starlin 2010-11-03 18:30:35

+0

它很难规模化,应该提供不在正确配置负载的系统上使用本地存储的性能显着提高。在大多数情况下,您引用的文档中描述的设置实际上比使用本地存储运行速度要慢。 – symcbean 2010-11-04 13:39:17