Articles of caching

有关过程caching的SQL Server 2005问题

服务器:SQL Server 2005 SP2 64位,32内存。 运行2个SQL Server实例。 我正在使用的主要实例有20个可见的演出。 我们有一种情况,每隔一段时间就会出现一次,我们的整个过程caching被清除,而这又会迫使存储过程(sp)重新编译。 一旦sp在caching中,一切都会快速运行一段时间。 几个小时之后,它从caching中被清除,并且必须重新编译,导致事情运行缓慢。 我正在使用以下方式观看caching: SELECT cp.objtype AS PlanType, OBJECT_NAME(st.objectid,st.dbid) AS ObjectName, cp.refcounts AS ReferenceCounts, cp.usecounts AS UseCounts, st.TEXT AS SQLBatch, qp.query_plan AS QueryPlan FROM sys.dm_exec_cached_plans AS cp CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) AS qp CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) AS st GO DBCC FREEPROCCACHE永远不会被调用。 如果我运行DBCC MEMORYSTATUS,我可以看到程序caching的TotalPages约为500k页。 这出来是3.9千兆分配给caching。 引用: SQL Server 2008中的计划caching […]

Memcache – 在有许多节点的分布式环境中的问题

我已经快速浏览了其他类似题目的问题,没有一个与我目前遇到的问题特别相似。 基本上,我们已经有了一个多节点的memcached环,运行了两年多,而且大部分情况是没有问题的。 memcache安装最近被移动到专用服务器上,容量增加了两倍(2GB到2GB)。 起初,我们遇到了麻烦,我认为这是php库如何与服务器交谈的问题,或者是服务器列表的顺序问题,或者是它们被错误地启动。 服务器“似乎”工作正常,但密钥似乎被存储在多个服务器上,并且过期不会过期值的所有实例。 基本上,我们将哈希机制从标准更改为一致,并且关键查找(到期/获取)和一切问题似乎已经恢复正常。 不过,在过去几周里,我一直在监视事物,注意到第一台服务器似乎要比第二台服务器多出许多倍(PHP memcache monitor工具报告每秒平均有1200次点击 ,而第二台服务器在500 )。 谁能解释一下: 首先,了解上面发生的事情,为什么一个服务器会在“分布式”环境中获得如此多的命中 其次,在分布式情况下,memcache客户端的推荐设置是什么 我使用一致的哈希做正确的事情吗? 我应该使用故障转移吗? 二进制存储? 或压缩? 什么是重置/移动现场内存caching环的正确过程 我发现memcached是一个非常棒的工具,对于它的目的来说是完美的,但实际的最佳实践指南和有用的文档(很less有详细描述)几乎没有。 如果我能够对发生的事情有一些了解,我一定会把它作为一个技术文章发布给所有人看(今后会有所帮助),但是我现在有麻烦了! 提前致谢

Nginxcaching页面,每隔一段时间返回二进制数据(.gz文件)。 当caching的文件夹被删除时工作

我有一个作为代理运行的nginx服务器。 它的页面被configuration为被caching并被压缩。 但是然后它每隔一段时间就会把页面作为.gz文件显示为一个文件来下载。 curl -I命中返回二进制数据。 curl -I www.site.com/cs 但是,当我删除caching文件夹一切开始工作正常。 sudo rm -r /tmp/nginx/cscache/ 什么可能是错的 ? 有人可以帮忙吗? 这是configuration location = /cs { proxy_pass http://localhost:82; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_ignore_headers Set-Cookie; proxy_ignore_headers Cache-Control; proxy_ignore_headers Expires; proxy_ignore_headers X-Accel-Expires; add_header X-Cache-Status $upstream_cache_status; proxy_cache cscache; proxy_cache_bypass $http_cs; proxy_cache_key $request_uri; proxy_cache_valid 200 302 1d; proxy_cache_valid 404 1m; proxy_cache_use_stale error […]

如何使背景变得更加激进

我有一个系统正在对GFS2文件系统进行连续不断的写操作,会发生什么情况是高速cachingbuild立到vm.dirty_ratio,然后在同步刷新期间加载高峰 我已经设置vm.dirty_background_ratio = 1和vm.dirty_ratio = 10,这肯定有帮助,但仍然有一个循环的cachingbuild立和同步刷新,尽pipe是一个较小的。 我真正想要的是使背景刷新更难。 我有CPU空余,所以我宁愿将冲洗工作尽可能均匀地分散,而不要同步。 任何build议最好的办法呢? 接下来我会尝试降低vm.dirty_writeback_centisecs,但是我已经看到了有关这方面的警告。 http://www.westnet.com/~gsmith/content/linux-pdflush.htm 这是2.6.32内核。

最好的操作码cachingfcgid? (APC vs eaccelerator vs xcache)

我一直在看网页,试图找出关于fcgid的操作码caching。 据我了解到目前为止,APC不是fcgid的一个很好的解决scheme,因为每个进程只有fcgidcaching的APC效率不高。 (参考: https : //stackoverflow.com/questions/598444/how-to-share-apc-cache-between-several-php-processes-when-running-under-fastcgi ) 所以我想那个叶子eaccelerator和xcache。 Xcache似乎明确地谈到了fcgid,所以我倾向于这个。 有人可以证实这一点?

为什么这个文件不尊重.htaccess的caching控制头?

testing性能改进,我添加了一个.htaccess文件与我/assets文件夹(我在这里存储各种types的几个图像)的以下指令。 <FilesMatch "\.(jpg|jpeg|png|gif)$"> Header set Cache-Control "public,max-age=7200" </FilesMatch> 看着ySlow的输出,它奇怪地向我显示了这一点: Resource Expires /assets/slide-1.jpg 2012/5/22 /assets/partners/part_01.gif 2012/5/22 /assets/partners/spacer.gif 2010/4/15 检查spacer.gif的标题,我注意到,一个gif有我的Cache-Control: public,max-age=7200头和一个Expires: Thu, 15 Apr 2010 20:00:00 GMT头,而所有其他图像在尊重最大年龄标题的文件夹中,没有明确的到期标题。 我敢肯定,没有其他文件名特定的caching控制指令在玩。 我曾经在web根目录下有一个caching破坏过去的过期date标题,但是这个标题已经被删除了,而且对于其他任何文件似乎都不是“粘滞”的。 为什么会这样?

Nginx的子域WordPress重写规则 – APC FPC – 作为一只乌龟慢。 为什么?

运行在Ubunty 10.04 Nginx(最新之一)与WordPress的子域多站点使用插件。 APC我有最新版本与PHP相同,我运行4个网站几乎没有stream量(每天30点击每个)和云服务器rackspace(2gig ram,基本模型)似乎50%ram使用是正常的。 它的工作,但 1)我正在使用batcache,apc插件,但是我不确定给他们多less内存,目前是128megs。 我把APC放在128兆,因为日志中的错误要求更多的内存,下面看看它的外观。 http://i.imgur.com/dKTmz.jpg <— apc.php页面图的图像 2)JavaScript没有得到gzipped。 3)index.php是每一个单一的url,如果删除wordpress引发错误。 下面是我的cfg文件,请帮我看看丢失了什么,我查看了50个nginx页面的configuration文件,并对其进行了修改,因为它们都不适合我的设置 nginx.cfg user www-data; worker_processes 2; pid /var/run/nginx.pid; events { worker_connections 1024; use epoll; #v1 # multi_accept on; #v1 } http { ## # Basic Settings ## sendfile on; tcp_nopush on; #tcp_nodelay off; #v1 tcp_nodelay on; #v2 server_tokens off; include mime.types; default_type […]

数据caching(XCache,APC,memcached等)共享主机/隐私的考虑

我有一个问题。 共享主机caching系统用于数据有多合适? 我的意思是据我所知,所有用户都将数据写入共享数据caching(对每个用户来说不是私有的)。 而在繁忙的服务器上,其他用户将有权访问我的caching数据。 情况可能会变得更糟,差错用户可能有相同的应用程序,因此数据可能会被其他用户覆盖等。 所以,我错了或数据caching不build议共享环境,因为隐私问题?

鱿鱼需要2分钟来caching一个小pdf

我们有一个问题,从某个特定的url的某些PDF需要很长时间来显示。 鱿鱼似乎用了很长时间来caching(超过2分钟)为110kb。 如果我没有通过鱿鱼浏览这个pdf,它完美的作品。 1359106030.833 120114 160.85.85.46 TCP_MISS/200 116194 GET http://www2.zhlex.zh.ch/appl/zhlex_r.nsf/0/9429732E0BEDB5EDC12574C60044A4CC/$file/xxx.pdf – DIRECT/195.65.218.66 application/pdf 你也可以看到tcpdump的差距 它存在于我们的Squid 3.1中,但也在Squid 3.2上。 它只发生在该url的PDF文件。 其他pdf工作正常。 它不能成为他们的服务器,因为它无需通过代理就可以顺利运行 这是我们的卫生configuration。 它从旧的鱿鱼版本被接pipe,并且从那以后没有被调整。 acl manager proto cache_object acl localhost src 127.0.0.1/32 acl bigip src xx.xx.xx.xx/32 acl to_localhost dst 127.0.0.0/8 acl monhost src xx.xx.xx.xx/32 acl srv-ts-057 src xx.xx.xx.xx/32 acl srv-ts-058 src xx.xx.xx.xx/32 acl snmppublic snmp_community Fast3thernet acl […]

NFS显示目录中的文件,但无法打开或统计

我正在使用Linux(内核2.6.32上的Debian Squeeze)机器的networking,使用NFS(v3)共享文件。 客户端A上运行的进程会在文件服务器Z上通过NFS创build一个文件,然后在A完成运行(刷新输出并closures文件)后,客户端B将尝试访问该文件。 99.9%的时间没有这个方法的问题。 问题是客户端B很less尝试读取时会抛出错误,指出文件不存在。 起皱的是,当在包含目录上做“ls”或readdir时,B总是显示文件。 但是,当试图打开,甚至调用文件的“统计”不存在的错误被抛出。 还有一些要点: 这些文件只能在单个客户端上写入一次,但可以被许多不同的客户端(WORM)多次读取。 这些文件也不会在这个过程中被删除。 当出现错误时,他们只会影响一些客户(随机)。 其他客户端可以打开和阅读文件没有问题。 此外,当问题发生时,往往会反复发生。 重新启动文件服务器并重新安装在客户端似乎消除了这个问题 该文件可以在足够的时间后被读取。 可能在几秒到十分钟之间。 有时它会在包含目录的readdir后立即消失,有时不会。 我最初怀疑这是一个NFS属性caching一致性问题。 所以我重新启用了noac选项。 这个问题继续出现(除了慢慢地)。 只有在繁重的NFSstream量时,才会出现这个问题,当大量的大文件正在创build,写入和读取。 在客户端或服务器端的任何syslog或dmesg中都不会显示任何问题。 我强烈怀疑这是某种types的NFScaching一致性问题。 但我无法弄清楚究竟是什么原因或可能的解决办法。 除非我误解了NFS手册,否则这种types的行为应该通过接近开放的caching一致性来排除。 有没有其他人有经验,这个问题的NFS文件存在的“readdir”系统调用,但不存在“统计”系统调用? 任何有识之士将不胜感激。 谢谢。