我们的体系结构由前端缓存组成,大多数只读用户可以直接从这些缓存中获取数据。前端缓存位于The服务器群的前面,这些服务器为用PHP编写的页面服务。我们需要能够在前端缓存级别检测某些条件,并通过HTTP报头将这些值传递到后端。例如,我们希望手动标记基于IP地址的载波网络。因此,对于传入的通信量,如果用户是来自"41.202.192.0"/19范围内的IP地址,我们将通过设置适当的header,将其标记为Orange喀麦隆用户,例如X-承运人= "Orange喀麦隆“。
根据这个标题的设置,我们希望改变缓存,并向最终用户提供不同的横幅。你会怎么做呢?请记住,我们不想污染缓存,我们也不想创建太多的小缓存段。
假设:您可以假设X-载体已经在我们的缓存中检测到了.因此,为了测试的目的,您可以在示例脚本中手动设置此值。
发布于 2012-08-10 08:04:46
清漆作为前端缓存听起来很适合这里的https://www.varnish-cache.org/
它非常快,可以轻松地在运行Linux的普通硬件上每秒处理数千个页面请求。
若要添加头,请选择适当的后端,确定缓存寿命等。有一种内置在Varnish中的脚本语言,它在Varnish启动时编译为C。查看VCL页面,了解您可以做什么https://www.varnish-cache.org/docs/3.0/reference/vcl.html。
还可以查看https://www.varnish-cache.org/trac/wiki/VCLExamples,了解人们如何在Varnish中部署VCL,以解决与您的https://www.varnish-cache.org/trac/wiki/VCLExamples类似的问题。
https://softwareengineering.stackexchange.com/questions/160104
复制相似问题