Articles of caching

使SATA磁盘写入caching安全

假设(参见,例如, 关于它的一个问题 ),在启用了NCQ的驱动器中,驱动器写入caching应该是安全的,因为在操作系统中数据没有被提交给盘片时。 我试图弄清楚需要什么设置才能使其成为现实。 我正在使用diskchecker.pl来确认是否所有模块都存在电源插头的拔出。 服务器configuration如下: 在Linux MD RAID10中运行的4个ST3500514NS。 英特尔3420芯片组。 在AHCI模式下。 运行在RAID10上的LVM。 在逻辑卷上testing的文件系统是ext4(barrier = 1,data = ordered)。 我也尝试直接在逻辑卷(块设备)上进行testing; 这并没有帮助。 Debian 6.0(挤压); 内核2.6.32-5-amd64 如果我closures写caching( hdparm -W0 ),那么它工作(在巨大的性能损失)。 所以看起来上层是有能力的。 我试过在libata中启用FUA(通过将fua=1传递给模块加载,并通过dmesg确认),这并没有帮助。 有关如何使这项工作的任何build议? 编辑:find原因(看我的答案); 任何关于如何获得至less一些performance的build议?

如何使用Squid CachecachingYouTubevideo?

我们正在使用我们公司的Squidcaching。 有什么办法可以cachingYouTubevideo吗? 欢呼:)

如何dynamic设置清漆响应TTL?

我的PHP脚本发送头X_Cache_ttl: 1h并在我的清漆configuration文件 sub vcl_fetch { if(beresp.http.X-Cache-ttl){ set beresp.ttl = beresp.http.X-Cache-ttl; } } 但是当我尝试启动它时,set命令行会导致varnish失败。 在我得到的日志 Expression has type STRING, expected DURATION ('input' Line 116 Pos 34) — ('input' Line 116 Pos 56) set beresp.ttl = beresp.http.X-Cache-ttl; 如何将X-Cache-ttl转换为一个持续时间,以便我可以dynamic设置TTL? 我想避免多个if语句类似 if(beresp.http.X-Cache-ttl == "60s") { set beresp.ttl = 60s; } if(beresp.http.X-Cache-ttl == "1h") { set beresp.ttl = 1h; } […]

Nginx + php-fpm – 运行时每个php-fpm进程70-100%cpu

我有以下情况发生: 我们正在使用8核,8gb ram,2.6 ghz的linode(使用nginx + php-fpm) – 我们获得了非常高的cpu使用率图表(我们不想成为如此糟糕的VPS邻居)… 我们的网站一次只有不到100个用户 – 所以这种情况也令人难以置信 – 我们的CPU使用率非常高。 我们正在使用一个非常未知的,可能是CPU密集型的PHP智慧,可怕的框架,而不是众所周知的,有据可查的,精心制作的其他框架,如WordPress或Drupal,其中有大量关于caching的文档(以及插件处理caching)在一个nginx + php_fpm平台上的php。 因此,我们有大约6个开放的php-fpm进程,当运行时,单独消耗大量(30+,通常接近99%)的CPU数量 – 而且我并没有真正想到如何阻止他们使用如此之多的CPU 。 我不知道是哪个php脚本导致这些尖峰,因为它们一直在发生……通常只有1或2个正在运行 – 但是当所有6个运行时,我们最大化所有8个cpus。 我的pool.d / www.conf文件具有以下设置: pm = dynamic pm.max_children = 10 pm.start_servers = 4 pm.min_spare_servers = 2 pm.max_spare_servers = 6 我们做了这个设置,因为按照我解释的方式,我们的记忆实际上是惊人的(htop显示472/7000 + mb使用,没有交换等),我们可以处理更多的进程,并打破等待获得的线处理 – 但不幸的是,因为在运行时我们的CPU上每个进程都过于激烈 – 我们最终将通过车顶驱动CPU – 所以我们无法处理足够的进程。 这个问题 – 我们可以做些什么来减lessphp-fpm cpu使用的过程,这样我们可以增加php-fpm池configuration文件中的设置 – […]

caching数据库结果 – 如何启动需要轻轻一点

我有一个项目即将到来,其中一个要求是caching什么是基本上只读的数据,以减轻数据库的压力。 我只是有点困惑如何caching与数据库的工作。 高速caching如何工作? 我见过一种叫做查询caching的东西,但是这样做是否caching查询结果呢? 或只是查询? 不是一种cachingforms吗? 我正在寻找一个正确的方向。 该项目将使用MySQL 5.1的商店,所以任何可以清除我的困惑的链接将是一个很大的帮助。 一般的Googlesearch只提供了查询cachingfunction,而且由于我在这方面的知识不足,我不确定这是我应该走的方向。

为什么在NginX中添加Expire-Header到静态文件不起作用

我有一个单一的服务器块,我的网站驻留在该块内,我已经添加了一个location块,如下所示: server { … location ~* \.(?:ico|css|js|gif|jpe?g|png)$ { expires 30d; add_header Pragma public; add_header Cache-Control "public"; } … } 当我用Y检查过期标题时! 缓慢没有任何东西被caching! 注意:在testing之前,我已经重新载入了我的configuration文件。 编辑1: 我注意到,更改任何静态文件都不会反映浏览器的新变化。 这个caching是否意味着服务器端caching? 我们不能在客户端浏览器上caching吗? 编辑2: HTTP/1.0 200 OK Server: nginx Date: Tue, 23 Sep 2014 07:41:20 GMT Content-Type: image/png Content-Length: 5597 Last-Modified: Wed, 30 Jul 2014 22:50:19 GMT ETag: "53d976ab-15dd" Accept-Ranges: bytes Age: […]

带有L2ARC(SSD)的ZFS对于随机search比没有L2ARC要慢

我目前正在testingZFS(Opensolaris 2009.06)在一个较旧的文件服务器,以评估其使用我们的需要。 我们目前的设置如下: 双核(2,4 GHz),带有4 GB RAM 带有11个HDD(250 GB)的3个SATA控制器和一个SSD(OCZ Vertex 2 100 GB) 我们要评估一个L2ARC的使用,所以目前的ZPOOL是: $ zpool status pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM afstank ONLINE 0 0 0 raidz1 ONLINE 0 0 0 c11t0d0 ONLINE 0 0 0 c11t1d0 ONLINE 0 0 0 c11t2d0 ONLINE 0 0 0 […]

快速SSD与服务器中的RAM

每GB的快速SSD(如Intel X25-E)的价格接近高端内存的价格。 那么SSD给你什么额外的优势呢? 有什么特别的原因,为什么你购买SSD,而不是在你的服务器机器上放更多的RAM,把它用作HDDcaching,甚至创buildRAM-磁盘? 编辑:当然我知道,SSD是持久的。 但是磁盘caching中的数据也是如此。 从RAM中读取要快得多,然后从SSD中读取数据。 而且,SSD的写入时间较慢,所以在那里没有HDD的优势。 特别是对于顺序写入。 编辑2:你可以把RAM的数量不是那么有限。 随着DDR3的推出,它不再是2的倍数,是3的倍数。标准的SOHO MoBos有6个插槽,而服务器主板有12个甚至是令人印象深刻的18个插槽 ,总共支持144GB的RAM。 即使你使用更具成本效益的4GB记忆棒,你仍然可以拥有72GB。

Linux上的空闲/caching/可用内存

我读过 linux使用可用内存进行caching,使系统更快。 但是,Nagios和Paessler PRTG监视系统都显示我的内存使用情况非常严重。 我可以改变Nagios的mem_usage脚本,以免费和caching内存,但这将是正确的信息? 我怀疑他们误解了Linux的内存使用情况。 可以说我有8 GB的RAM。 5 GB被使用,2 GB被caching,并且我有1 GB可用内存。 真正的可用内存应该是免费+caching(3 GB)? 如果某些新应用程序需要额外的3 GB RAM,是否可以在不使用交换的情况下从caching和空闲中获取所有内容,还是应该在caching中存在最小值? 真实的例子: $ cat /proc/meminfo MemTotal: 5984256 kB MemFree: 137052 kB Buffers: 140484 kB Cached: 3439616 kB SwapCached: 244 kB Active: 3148824 kB Inactive: 2341768 kB … 我的监视工具显示,我有137 MB可用RAM,但是我有3.5 GB的caching。 谢谢!

Windows Server 2003 /terminal服务 – DLLcaching?

在terminal服务器环境中,Windows Server 2003是否按用户caching特定的DLL? 背景故事: 我们最近不得不为我们的应用程序更新一些DLL,并且几个客户端仍然遇到更新要解决的问题。 DLL的内部版本号改变了,但显然这个名字没有改变。 所以我试图找出这些用户是否有他们的个人资料中的旧DLL的caching版本。