我正在使用java创建一个非持久性缓存系统,以便存储HTTP响应,我想我可以使用地图来存储缓存内容。
我不清楚如何检查所请求的元素是否存在。 我认为开始考虑所请求资源的地址可能是一个想法,但我认为这还不够,因为除了请求的资源之外,HTTP请求也可能还有cookie,每个请求可能会有所不同......
我试图找一本手册来解释如何管理缓存,但我什么也没找到。
你能帮我找一个解决方案吗? 感谢
答案 0 :(得分:0)
好的,让我们记下我们在讨论过程中所记录的所有记录:
生成请求指纹并通过该指纹识别其他请求。必须根据请求期间出现的所有信息计算指纹。通常,您将使用此类指纹的哈希作为地图内的键。 由于对相同请求的响应应该相同,因此缓存的响应应该是对第二个相同请求的正确答复,其中标识由生成的相同密钥匹配。
对于缓存数据的存储,我们会想到两个设置:
缓存保存在数据库中。这保证了良好的性能,并允许存储额外的信息以及finderprint和内容:说明时间,附加标题,......
基于文件系统:每个响应都存储在一个文件中,文件以指纹命名。问题是如何存储其他信息(如果需要)。