Articles of caching

我正在努力configuration清漆来说明语言的cookie

我相当新的清漆caching世界,我需要优化一个很慢的Wordpress应用程序。 我今天做了大量的研究,并取得了一些进展,但是我坚持使用语言cookie的configuration。 所以,应用程序设置一个名为qtrans_front_language的cookie,指示前端需要使用哪种语言。 我想caching所有的页面清漆,但我不能忽略这个cookie,否则我不能在一个页面caching后切换语言,并从不同的浏览器同时浏览时,我得到奇怪的行为。 我正在考虑在caching中添加语言定义(例如“en”),以便每个页面都有自己的caching条目,下次浏览时我会得到一个HIT。 我的问题是,这个cookie是由后端设置,但是,如果我不“放弃”后端cookie,我的网页永远不会caching清漆。 这是我迄今为止: vcl 4.0; # Import directors and std library. import directors; import std; # Backend backend default { .host = "my_ip_here"; .port = "80"; .connect_timeout = 600s; .first_byte_timeout = 600s; .between_bytes_timeout = 600s; .max_connections = 800; .probe = { .url = "/"; .timeout = 1s; .interval = 5s; .window […]

为什么diskspd在没有caching的情况下performance更好?

目前,我们正在研究作为SQL服务器运行的Windows Server 2012 R2上的高磁盘延迟。 它是VMware下的一个虚拟机,故障磁盘的数据存储与SAN上性能极高的LUN相链接。 即使在事件和testing期间,SAN对LUN的响应时间也非常好。 数据存储在每个时刻都显示出非常好的响应时间。 CPU和内存不是瓶颈,我已经加倍检查。 微软build议我们使用diskspd来testing我们的磁盘性能。 这是2套testing的结果。 我跑了他们一段时间,更长的时间间隔,在不同的时间,所以我相信结果不是偶然的。 命令行:diskspd -b64k -o32 -t4 -d60 -w50 -Sw -r -L -c20G -Z1G C:\ iotest.data 总IO线程| 字节| I / O | MB / s | I / O每秒| AvgLat | LatStdDev | 文件 12623020032 | 192612 | 200.59 | 3209.46 | 38.636 | 21.687 命令行:diskspd -b64k […]

Nginxcaching,在miss / bypass上redirect

有没有可能设置nginxcaching(nginx_proxy_cache)以不同的方式处理MISS / BYPASS: caching存在 – >使用它 cachingMISSed / BYPASSed / UPDATing – >redirect到后端服务器。 为什么我需要这个? 我有6个服务器与SATA驱动器上的静态mp4文件(所有克隆)。 并购买了新的固态硬盘来testing性能。 如果我使用标准的nginxcaching,是的,它会工作…几个小时后,它将从超载服务器下载1k x 10MB文件:) 我试图实现:“服务器如果caching,redirect到后端(而不是BYPASS!),同时caching/更新” 正如在评论中所问,如果我访问不在caching中的URL,我会得到这样的回应: GET http://xxx/content/mp4/yyy/zzz.mp4 HTTP/1.1 200 OK Server: nginx Date: Fri, 16 Dec 2016 23:44:54 GMT Content-Type: video/mp4 Content-Length: 25065219 Connection: keep-alive Last-Modified: Mon, 22 Jun 2015 02:34:00 GMT ETag: "55877418-17e7703" X-Cache-Status: MISS Accept-Ranges: bytes 正如你所看到的,有我想要的“位置”字段。 […]

dnsmasq不为非公共dns服务器caching

我试图configuration我的dnsmasq转发请求到不同的DNS服务器取决于域。 服务器= / a.example.org / 192.168.aa 服务器= / b.example.org / BBBB 服务器= / c.example.org / 8.8.8.8 现在caching不适用于a和b。 我总是得到完整的TTL。 192.168.aa和bbbb是相同的DNS服务器。 bbbb是example.org的授权DNS服务器,因此8.8.8.8在那里转发请求。 当我看什么dnsmasq在做什么,我看到这个: tcpdump -ni任何src端口53而不是dst 127.0.0.1 07:14:45.680354 IP 192.168.aa53> dnsmasq.36892:400 * – 1/0/1 A xxxx(70) 07:14:45.713410 IP bbbb53> dnsmasq.50966:8767 * – 1/0/1 A xxxx(70) 07:14:45.770882 IP 8.8.8.8.53> dnsmasq.35365:3482 1/0/1 A xxxx(70) 07:14:55.850404 IP 192.168.aa53> dnsmasq.20329:11717 * – […]

Pgpool-II不会使用户模式的查询caching无效

我用postgresql (v9.5)configuration了pgpool2 (v3.4.3)来caching这样的查询: memory_cache_enabled = on memqcache_method = 'shmem' memqcache_total_size = 67108864 memqcache_max_num_cache = 10000000 memqcache_expire = 600 memqcache_auto_cache_invalidation = on memqcache_maxcache = 409600 memqcache_cache_block_size = 1048576 memqcache_oiddir = '/var/log/pgpool/oiddir' 我可以确认查询实际上是被caching的。 问题在于即使在更新,插入和删除同一张表之后,caching也不会失效。 这是发生了什么事情: 从表中select一行 – caching不存在 – 执行实际select。 select同一行 – 从caching中检索行。 更新同一行 – 成功。 select同一行 – 从caching中检索行。 高速caching失效在public架构中按预期工作,但不在其他架构中工作。 我已经阅读了常见问题解答 : 当我使用模式限定的表名时,pgpool-II不会在内存查询caching上失效,并且我得到了过时的数据。 为什么? 看来你没有安装“pgpool_regclass”函数。 没有这个函数,pgpool-II将忽略模式限定表名的模式名称pat,并且高速caching失效失败。 我已经在application和postgres数据库上同时安装了pgpool_adm […]

Nginx不更新最大年龄

如果我向configuration为caching上游的Nginx代理服务器发出请求,我会得到以下响应头文件: {'content-length': '13200000', 'x-cache-status': 'MISS', 'server': 'nginx/1.9.9', 'connection': 'keep-alive', 'cache-control': 'max-age=45', 'date': 'Fri, 27 Jan 2017 10:57:55 GMT'} 几秒钟后,我再次做同样的请求,我得到以下标题: {'content-length': '13200000', 'x-cache-status': 'HIT', 'server': 'nginx/1.9.9', 'connection': 'keep-alive', 'cache-control': 'max-age=45', 'date': 'Fri, 27 Jan 2017 10:58:18 GMT'} 上游服务器指定max-age头为45秒,第二个响应头是否有更新的max-age头? 这是最大年龄= 45-(请求之间的时间)? 编辑 重现行为的示例configuration: http { include mime.types; default_type application/octet-stream; upstream backend { server localhost:8080; } proxy_cache_path /etc/nginx/wwwroot/cache […]

如何限制Dovecot.index.cache大小

在我的服务器,我有各种电子邮件帐户有一个非常大的dovecot.index.cache文件 即 -rw-r —– 1位用户72506540​​ Sep 16 20:20 dovecot.index.cache 有什么办法来限制dovecot.index文件的大小,特别是dovecot.index.cache? 谢谢

Nginx的字节范围caching问题与Safari

我在使用MP4字节范围caching和Apple浏览器时遇到了一些问题。 我有一个caching节点,抓取后端节点的内容,并将其caching,然后将其提供给用户。 这是通过使用nginx proxy_pass和nginxcaching来完成的。 我发现许多浏览器会首先请求整个video(字节范围0-无限),然后请求块。 这是一个问题,因为它会导致caching节点立即从后端下载整个video。 为了解决这个问题,无论请求的字节范围有多大,我们都要求caching节点将请求分成10M块。 这几乎适用于所有的浏览器,除了Safari浏览器。 对于桌面以及Safari浏览器,Safari都会立即抛出媒体损坏错误。 发送请求时将错误抛出,字节范围设置为完整文件。 如果我们不重写请求,它在Safari上工作正常,但是导致caching节点端口几乎全部被饱和,因为当有人开始stream式传输文件时,整个文件被下载到caching节点,饱和港口。 任何build议,我怎样才能解决这个将不胜感激。

限制linux文件caching内存的使用(以避免pipe理程序内存耗尽)

我有一个16GB内存的服务器运行几个Linux虚拟机(10左右),执行几个不同的任务。 这些具有默认configuration的机器将会填满我所提供的带有caching的最大内存。 即使对于物理主机来说,这是一个理想的行为,但是在我的设置中,这个caching实际上消耗了不能从主机上释放的真正的主机RAM,并迫使我设置相对较低的RAM数量(不超过(16 – host cache)/number of vms )。 这是非常不可取的,因为系统失去了灵活性,无法处理来自具体vms的零散RAM请求。 我想到的唯一方法是限制内核可用于caching的RAM数量(或使caching尽早过期),但是我还没有find有关如何执行此操作的任何文档。 大多数论坛post都是指linuxatemyram.com或者类似的,我似乎也没有在/ proc / sys / vm /下面公开任何相关的参数。 也许有些人可以提供一些见解呢? 我会很感激。

新鲜的Ubuntu 16.04 Nginxconfiguration服务旧的静态文件

我有一个非常基本的登陆页面。 在过去的几天里,我一直在打一个非常奇怪的问题。 例如,该目录包含: vanilla> ./files/ ./index.html ./main_style.css files> ./back.gif ./back1.gif ./logo.png index.html的内容: <!DOCTYPE html> <html> <head> <title>Vanilla</title> <link rel="stylesheet" type="text/css" href="main_style.css"/> </head> <body> <div> <img class="logo" src="files/logo.png" /> </div> </body> </html> main_style.css的内容: html { background-image: url("files/back1.gif"); background-repeat: repeat; } img.logo { width: 471px; height: 384px; position: absolute; top: 50%; left: 50%; margin-left: -235px; margin-top: -192px; […]