我想在“html 级别”实现一个 jsp 缓存。我的想法是:
for each request{
if(exists("/cache/<product_id>/<product_name>.html")){
response "/cache/product/1234/cat.html"
}else{
response database.getCat("1234")
}
}
exists(String path){
if(!file(path)){
return false;
}else{
if((currentDate = file(path).createdAt) > CACHE_TIME){
return false
}else{
return true
}
}
}
因此,如您所见,如果页面自 CACHE_TIME 以来未显示,则仅转到数据库(或另一个繁重的进程)
例子:
用户 1 转到http://mysite.com/products/1234/cat.jsp 系统转到数据库并生成一个 html 文件 (products-1234-cat.html) 用户 1 看到页面 立即出现用户 2 并转到相同的 url 系统看到缓存存在,所以使用 products-1234-cat.html 响应(没有数据库,没有繁重的进程)。
我该如何实施?
我希望我清楚我想要什么