jjzjj

MemCached

全部标签

php - 选择合适的缓存机制

我的设置:4台网络服务器静态内容服务器(NFS挂载)2个数据库服务器2个“魔术”服务器另外8台指定为多用途的机器。我正在为三种缓存机制编写一个包装器,以便可以以某种规范化的方式使用它们:文件系统、Memcached和APC。我正在尝试提供使用示例(以及实际放入每个缓存中的内容)。文件系统处理我们生成然后静态提供的内容。RSS提要、旧报告数据、用户特定页面等...这些都缓存到静态服务器。内存缓存PHPsession数据、MySQL查询结果,通常是需要在我们的系统中可用的东西。我们有8台机器可以包含在服务器池中。APC我不知道。这两个“魔术”服务器不是任何分布式系统的一部分,因此它们似乎可

php - memcached.hash 策略有什么用?

我想知道为什么会有memcache.hash_strategyphp.ini设置。手册说:Controlswhichstrategytousewhenmappingkeystoservers.Setthisvaluetoconsistenttoenableconsistenthashingwhichallowsserverstobeaddedorremovedfromthepoolwithoutcausingkeystoberemapped.Settingthisvaluetostandardresultsintheoldstrategybeingused.但不是程序员自己将key映射

php - memcacheD 这个可以吗?

我是memcached的新手。此代码是否容易受到过期缓存竞争条件的影响?你会如何改进它?$memcache=newMemcache;$memcache->connect('127.0.0.1');$arts=($memcache===FALSE)?FALSE:$memcache->get($qparams);if($arts===FALSE){$arts=fetchdb($q,$qparams);$memcache->add($qparams,$arts,MEMCACHE_COMPRESSED,60*60*24*3);}if($artsFALSE){//dostuff}else{//e

php - 内存缓存安装错误

当我尝试通过命令行在windowsxp中使用xampp安装memcached时,如下所示:pecl安装内存缓存我在命令窗口中收到此错误:错误:DSPmemcached.dsp不存在。1-问题是什么?2-如果无法解决如何编译memcached包直接从pecl下载它? 最佳答案 你可能lookhere对于相关问题。看起来可用于PHPWindows的扩展有限,memcached可能还没有为pecl4win构建。有alink关于如何在Windows上构建自己的PHP的另一个问题,或者您可能会询问其他人是否可以在邮件列表上进行构建:lists

php - PHP APC 作为本地对象存储除了存储大小外还有其他限制吗?

我在Web服务的生产服务器上使用PHPAPC已经很长时间了,每天有1000万次成功点击。我正在考虑将更多数据卸载到APC本地缓存。理论上,在我看来,因为APC调用主要是本地内存访问。调用它10,000次/秒应该不是问题。据我所知,它的限制可能在于内存大小,但只要服务器有可用的CPU,它就不应该在高速率下出现性能或损坏问题。是否有任何我不知道的限制可能会阻止我在应用服务器(ubuntu)上以非常高的速率使用APC的本地对象缓存。更新:显然,根据下面的答案,我的问题并不清楚。我不是在寻找替代缓存选项(memcache、redis等)。我的问题是,以非常高的速率和读取并发使用本地APC是否存

php - 内存缓存性能

我感觉我网站的Memcached查询速度比Mysql慢。请查看我从NewRelic获得的网站性能截图。我不知道如何在我的CentOS服务器上优化memcached。请查看Memcached的配置和性能截图。我觉得总连接数很高。请查看下面的实时统计数据下面是我在我的网站中使用Memcached的方式connect('localhost',11211)ordie("Couldnotconnect");}if($result=$memcache->set($key,$var,$flag,time()+$expire)){returnTRUE;}else{returnFALSE;}}funct

php - Memcached:检索所有键时如何突破限制

由于事实上我无法在网络中找到任何可靠的程序,一旦slab中的键数超过500k,我就会检索所有内存缓存键,我想用PHP编写自己的程序。然后我意识到为什么所有的程序都不能真正适用于如此多的key是有原因的。当我用statscachedump读取键时它只返回一定数量的键,在我的例子中,这些键结束了大约30k。我怎样才能至少得到这500k可能在一个slab中?所有建议使用的“帖子”和“答案”memdump不工作。他们也有这个限制。我正在使用memcached1.4.25 最佳答案 调试完memcached源代码后,我意识到items.c/i

php - 在 PHP 中与 memcached 的持久连接

在我们当前使用的memcached中,我们在高容量服务器中遇到了问题,因为设置和断开与我们的memcache服务器的连接花费了太多时间。使用与memcached的持久连接是否有助于缓解这个问题?此外,连接和使用持久性memcahced连接的首选方法是什么?我正在考虑设置一个“pool_size”变量,然后从1-$POOL_SIZE中随机选择并使用该连接$mem=newMemcached(rand(1,$pool_size));要么我找错了地方,要么没有太多关于此的信息。 最佳答案 pecl/memcache和pecl/memcach

php:基于 cookie 的 session

是否有任何机构有任何关于如何集成基于cookie的session系统的信息/链接?我使用过文件/mysql,目前正在使用memcached。我想玩apcsession,但想试试cookie,只是我不太了解。我想我必须编写自己的session处理程序类? 最佳答案 在PHP中,session数据通常存储在文件中。cookie中唯一存储的是session标识符。启用session并找到有效的sessioncookie后,PHP会将文件中的用户session数据加载到一个名为SESSION的super全局变量中。基本session使用se

php - 网络服务器上的错误监控/处理

我们有一个Web服务器,我们将在其上启动许多应用程序。它们都将共享数据库和内存缓存服务器,但每个应用程序都有自己的mySQL数据库,每个应用程序的所有内存缓存key都带有前缀。可能的场景:如果我们集群中的memcached服务器出现故障,我们希望通过电子邮件/iphone推送通知或任何其他适当的方式自动联系某人(操作系统管理员)。如果我们要在我们的服务器上为我们的客户安装150个相同的应用程序,而一个memcached服务器挂掉了-所有150个应用程序都会单独发现并联系我们的系统管理员,他们肯定会考虑让一份新工作,他或她不会被凌晨4点15分发送的150条消息吵醒。可能的解决方案:一个想