标签: cache

使用 varnishadm 清除单个 URL 的清漆缓存

一个 Wordpress 网站正在使用 Varnish。

我想为单个 URL 而不是整个域清除 Varnish。

使用此命令,我可以为整个域重新启动 Varnish:

varnishadm -T :6082 -S /etc/varnish/secret 'ban req.http.host ~ \"http://www.foo.com\" && req.url ~ \"^/\"'
Run Code Online (Sandbox Code Playgroud)

但是,我只想为单个 url 清除清漆。

前任: www.foo.com/url_to_be_purged

我试过用单个 URL 替换上一个命令:

varnishadm -T :6082 -S /etc/varnish/secret 'ban req.http.host ~ \"http://www.foo.com/url_to_be_purged\" && req.url ~ \"^/\"'
Run Code Online (Sandbox Code Playgroud)

但它没有用,URL 仍然是HITVarnish 中的。

关于如何实现这一目标的任何想法?

更新

根据ghloogh 的建议,我尝试了以下命令:

varnishadm -T :6082 -S /etc/varnish/secret ban "req.http.host == http://www.foo.com && req.url == http://www.foo.com/url_to_be_purged"
Run Code Online (Sandbox Code Playgroud)

我也试过这种变化:

varnishadm -T :6082 -S /etc/varnish/secret ban "req.http.host == http://www.foo.com && req.url == /url_to_be_purged" …
Run Code Online (Sandbox Code Playgroud)

cache varnish

13
推荐指数
1
解决办法
3万
查看次数

管理 LSI 和类似 RAID 控制器上的电池重新学习周期

工程师如何处理 RAID 控制器电池“重新学习”周期?

如中所述:LSI MegaRaid 上的“电池重新学习”是什么?, 重新学习周期会使 RAID 控制器电池(BBWC 或 BBU)放电,从而取消写入缓存加速。检查电池寿命,充电后,重新启用写入缓存。在重新学习周期的持续时间内,这对服务器 I/O 性能有明显的影响。我认为这每月发生一次。

已经注意到性能下降,尤其是在数据库系统上:

数据库慢?检查 RAID 电池!

重新了解您的电池

我的背景是 HP ProLiant 服务器,它的Smart Array控制器没有经过这个练习(或者至少有更主动的电池寿命监控)。这似乎是一个可怕的功能(最大的不便,收益很小),但我在一个有许多 LSI 控制器(在Supermicro硬件上)的环境中,想看看是否可以将一揽子策略应用于相关系统。

  • LSI 控制器上重新学习周期的默认时间表是什么?
  • 这些重新学习周期有用吗?
  • 是否应该禁用此功能?
  • 如果您选择在您的环境中启用此功能,您将如何处理调度?您是手动安排这个还是允许控制器设置自己的时间表?
  • Dell Perc 控制器是否以同样的方式受到影响?(LSI 是 OEM

raid cache lsi hardware-raid dell-perc

13
推荐指数
1
解决办法
1万
查看次数

如何解决 .htaccess 文件中的“ExpiresActive not allowed here”错误信息?

我正在尝试将 Expires 标头添加到我正在处理的站点的 HTTP 响应中。我控制 Apache 1.3 服务器的唯一方法是编辑我的 .htaccess 文件。我尝试添加如下代码以启用 Expires 标头:

<IfModule mod_expires.c>
    ExpiresActive on
    ExpiresDefault "access plus 1 hour"
</IfModule>
Run Code Online (Sandbox Code Playgroud)

但是,这会导致内部服务器错误,并在日志中显示以下错误消息:

此处不允许 ExpiresActive

我可能无法使用其他缓存控制方法,因为 mod_headers 未启用。有什么办法我仍然可以通过 .htaccess 文件中的一些命令使用 mod_expires 启用 Expires 标头?

更新
我记得在某个地方读到过 httpd.conf 中的 Override 设置可能与它有关。有什么方法可以验证这确实是问题所在?如果是,是否有一些解决方法来控制我网站的缓存标头?

cache .htaccess apache-1.3

12
推荐指数
2
解决办法
3万
查看次数

如何为高使用率的 ASP.NET 应用程序对 SQL Server 2008 进行负载平衡?

假设您有一个成功的 Web 应用程序,它使用 ASP.NET 和 IIS 7。它会生成对 SQL Server 2008 数据库的许多调用,并且预计将以 99.9% 的正常运行时间(停机时间为 8 小时,每次 45 分钟)向公众开放。年)。

我们的目标是:

  • 在服务器上安装 Windows 更新而不会导致我们的客户停机
  • 防止服务器上的硬件崩溃因超时而减慢 ASP.NET 应用程序的速度

与负载平衡 ASP.NET 应用程序不同,负载平衡 SQL 似乎要困难得多。为使用 Microsoft 堆栈的 Micro-ISV 设置简单负载平衡 SQL Server 2008 R2 群集的最佳做法是什么?

sql .net cache load-balancing sql-server

12
推荐指数
1
解决办法
2万
查看次数

调整 Linux 磁盘缓存行为以获得最大吞吐量

我在这里遇到了最大吞吐量问题,需要一些关于如何调整旋钮的建议。我们正在运行一个 10Gbit 的文件服务器来进行备份分发。这是一个 LSI MegaRAID 控制器上的两个磁盘 S-ATA2 设置。服务器还获得了 24gig 的内存。

我们需要以最大吞吐量镜像上次上传的备份。

用于“热”备份的 RAID0 为我们提供了大约 260 MB/秒的写入速度和 275 MB/秒的读取速度。经过测试的 20GB 大小的 tmpfs 为我们提供了大约 1GB/秒的速度。这种吞吐量正是我们所需要的。

现在如何调整 Linux 的虚拟内存子系统以在内存中尽可能长时间地缓存最后上传的文件而不将它们写到磁盘(或者甚至更好:写入磁盘并将它们保存在内存中)?

我设置了以下 sysctls,但它们没有给我们预期的吞吐量:

# VM pressure fixes
vm.swappiness = 20
vm.dirty_ratio = 70
vm.dirty_background_ratio = 30
vm.dirty_writeback_centisecs = 60000
Run Code Online (Sandbox Code Playgroud)

这理论上应该给我们 16GB 的缓存 I/O 并等待几分钟直到它写入磁盘。仍然当我对服务器进行基准测试时,我发现对写入没有影响,吞吐量没有增加。

需要帮助或建议。

linux storage cache ftp

12
推荐指数
1
解决办法
1万
查看次数

Windows Server 2008 R2 64 位内存泄漏

我的一台办公室服务器出现问题。它是一个具有 6GB RAM 内存的虚拟化 Windows 2008 R2 服务器。它只有 Microsoft SQL Server(分配的最大内存 = 3GB),以及一个不消耗超过 1GB RAM 的软件。但是,服务器的 RAM 内存几乎已满,查看任务管理器中的进程,他们似乎无法总结这一点。我已经安装了 RamMap,但不能很容易地解释它,你能识别出任何“高价值”吗?

在此处输入图片说明

windows-server-2008 memory virtual-machines cache sql-server

12
推荐指数
2
解决办法
4500
查看次数

有没有办法强制 Windows 在 RAM 中缓存文件

我有一个 windows server 2008 R2 文件服务器,它有一些大文件,在极少数情况下,尽快复制到另一个系统非常重要。

有没有办法强制这些文件总是缓存到 RAM 中?

windows cache

11
推荐指数
1
解决办法
2万
查看次数

如何配置 nginx 以从 RAM 提供静态内容?

我想将 Nginx 设置为我的 Web 服务器。我想将图像文件缓存在内存 (RAM) 而不是磁盘中。我正在提供一个小页面,并希望始终从 RAM 提供一些图像。我不希望为此使用 Varnish(或任何其他此类工具),因为我相信 Nginx 能够将内容缓存到 RAM 中。我不确定如何为此配置 Nginx?我确实尝试了一些组合,但没有奏效。Nginx 一直使用磁盘来获取图像。

例如,当我尝试使用 Apache 基准测试使用以下命令进行测试时:

ab -c 500 -n 1000 http://localhost/banner.jpg
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

socket: Too many open files (24)
Run Code Online (Sandbox Code Playgroud)

我想这意味着 Nginx 试图从磁盘同时打开太多文件,而操作系统不允许此操作。任何人都可以建议我正确的配置吗?

nginx cache memcache

11
推荐指数
3
解决办法
2万
查看次数

不规则的互联网中断:某些图像和 JS 未加载

第一次在 ServerFault 上,我有一个很好的小难题。

几个月以来,我们的互联网连接一直存在问题。

环境:

Servers: 2 Terminal Servers as an RDSFarm running Windows Server 2008 R2
Browser: Internet Explorer 9
Test/debug browser: Chrome
AntiVirus: Avast 7.0.1455
Run Code Online (Sandbox Code Playgroud)

问题:

网站会不定期地拒绝加载,并显示无法访问该页面或某些图像无法完全加载的错误消息。此外,在检查多个 .js 文件后无法加载。

在此处输入图片说明

结果和我们尝试过的:

第一印象:

当我在这段时间内使用 Chrome 时,该站点在刷新后返回 net::Error 101 或 Error 103。在其他时候,如果它没有给出错误,则多个图像不可见并显示 X 图像。IE 只是说页面无法显示。

在此处输入图片说明

使用 Chrome 开发者工具:

它在控制台中显示多个资源不可用,但是当我右键单击丢失的图像并选择“显示图片”时,它们会显示。当我通过直接 URL 打开图片时,它们也会显示。

在此处输入图片说明

通过 Chrome 开发者工具审核:

当页面处于错误状态时,我对其进行了审核,发现一些 .js 文件与一些 .png、.jpg 和 .gif 文件没有一起加载。Chrome 和 IE 加载不同的图像。

在此处输入图片说明 在此处输入图片说明

混淆的 JS 文件和 Avast:

在检查之后,我发现大多数 .js 文件都是经过混淆的 JS 文件,而且由于我们运行的是 Avast 7.0.1455,我想知道 Web Shield 是否没有搞砸。

再说一次,它只发生在第一个 TS 上,而不是第二个。 …

internet terminal-server cache windows-server-2008-r2 rds

11
推荐指数
1
解决办法
971
查看次数

sssd 和 ldap 身份验证缓存

在我们运行 OpenSUSE 12.2 的机器上,我们已经安装了 OpenLDAP 和sssd守护进程。我们正在使用这两个服务进行用户身份验证。最近我们创建了一个脚本,它动态地为我们的虚拟主机创建新的网络用户,但现在我们正在处理一个问题。

sssd 似乎使用了某种缓存,并在getent passwd此期间返回已从 LDAP 中删除的用户。有时它不会立即返回最近创建的用户,因为它在脚本中是必要的(用于使用setfacl和设置权限chown)。

重新启动 LDAP,sssd或者nscd没有帮助,也没有使用sss_cache -U. 我们尝试降低配置中的缓存,sssd但似乎没有任何影响。

在将新用户添加到 LDAP 或完全禁用缓存后,我们需要以某种方式显式刷新缓存。

有没有人遇到过类似的问题?

ldap cache latency sssd

11
推荐指数
3
解决办法
4万
查看次数