caching - 您如何测试 Varnish 配置或一般的缓存层

标签 caching testing varnish varnish-vcl

你如何测试你的缓存层? (无论是 Varnish、Nginx/Apache、FaSTLy 还是任何其他产品/服务)。鉴于缓存很难这一事实,我在 Internet 上发现了关于该主题的少量信息。目前我正在使用 PhpUnit 编写遵循特定场景的“单元”测试:

  • 设置初始参数,例如 HTTP header 、cookie、HTTP 引荐来源网址、用户代理,
  • 执行(可能是多个)HTTP 请求,
  • 检查这些请求的预期结果(HTTP header 、cookie、是否存在某些 HTML 代码),
  • 检查预期响应时间,
  • 验证执行 HTTP 请求的客户端状态是否与应用程序同步(测试 session 对象内容、数据库等)

我不断向我的测试用例添加新测试,并在每次更改时测试缓存层。

我见过有人使用 varnishtest 来测试 Varnish,但它的功能似乎非常有限(例如,您无法测试后端数据库以确认某些状态已设置)?

您测试缓存层的策略是什么?

最佳答案

我使用 tsung ,它最初是一个分布式负载测试工具,但它可以执行您列出的操作。

Tsung 由 xml 文件引导,这些文件描述了您可以设置初始参数、并行启动多个客户端并检查特定结果的场景。

关于caching - 您如何测试 Varnish 配置或一般的缓存层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33540713/

相关文章:

caching - Doctrine2 更新元素的缓存

android - 如何获取缓存目录: android的准确大小

c# - 模拟 Web 服务调用时的测试类型

php - 为什么这个 SQL 查询会杀死我的服务器?

ubuntu - 在 github 操作中安装 Varnish

php - 强制 Codeigniter 使用 varnish

listview - 如何清除/避免 FFImageLoading 在列表项图像中的缓存

node.js - 使用 Redis 缓存 mongoose 对象

python - 在 Pytest 中使用 MagicMock 对象时如何检查嵌套函数中的异常?

java - 如何对旧的遗留应用程序进行单元测试