有一个网站静态化缓存的想法,大家来讨论一下. 你介绍的实现也可以 介绍这边的一个实现方式:页面地址的url的md5值作为文件名字 前2位字符为文件名字 然后用file_exists判断 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 就是我在写完本文的时间,我就有这么一种想法,直接用URL做文件名,但实在不明白为什么要用MD5呢?不明觉历。。是为了防止重复吗?每个URL都不一样,我觉得不可能重复啊。。 非常可惜,你的思路正是那感觉有点臃肿的缓存机制所使用的只不过人家在实现时并不需要:获取URL到数据库中判断,如果不存在,则把 页面及传递参数,生成一个KEY及时间写入数据库而是从 url 中替换掉不能出现在文件名中的字符,得到缓存文件名检查该文件是否存在,如果不存在或文件修改时间早于约定的时间,才重新产生缓存文件 下次如果再访问该页面,判断时间是否大于设定的 30分钟这样的话,每个页面都需要经过ajax再次请求走php程序,这样失去了缓存的意义一般网站的页面无非2种:列表页,内容页列表页更新频率高,读取量并不大,可以不缓存,但向数据库查询的参数必须加好索引提速内容页更新频率低,读取量大,可以考虑生成静态HTML页面缓存的目的我个人认为有2个:缓存复杂计算结果,或是绕过php脚本直接读取静态文件 为何还要 ajax,3楼已经有答案了。。不需要ajax的。 ajax只是一种实现方式,在当前请求判断文件也是一样,终归是要走一遍php脚本这样的缓存没有意义,复杂缓存机制代替了原本的数据查询和模板渲染,没有节省太多时间,除非你直接跳过PHP VS2008访问程序界面用的是什么对象? 关于SQL转义的问题 请问如何给MySQL数据库传递DATETIME数据? [200分]谁能说说AOP思想在PHP网站开发中的应用? PHP如何才能生成文本文件? mysql 里的逻辑变量 在哪里??? 求高手开发一个在线信息查询网站程序 怎样在PHP4中调用JavaBean 急!!!!apache+php在Win98下的安装问题,请高手指教,不胜感激 Apache能不能支持中文文件名 memcache 缓存内容存储的位置 关于PHP对数据库调用问题
就是我在写完本文的时间,我就有这么一种想法,直接用URL做文件名,但实在不明白为什么要用MD5呢?不明觉历。。是为了防止重复吗?每个URL都不一样,我觉得不可能重复啊。。
只不过人家在实现时并不需要:
获取URL到数据库中判断,如果不存在,则把 页面及传递参数,生成一个KEY及时间写入数据库而是从 url 中替换掉不能出现在文件名中的字符,得到缓存文件名
检查该文件是否存在,如果不存在或文件修改时间早于约定的时间,才重新产生缓存文件
这样的话,每个页面都需要经过ajax再次请求走php程序,这样失去了缓存的意义一般网站的页面无非2种:列表页,内容页
列表页更新频率高,读取量并不大,可以不缓存,但向数据库查询的参数必须加好索引提速
内容页更新频率低,读取量大,可以考虑生成静态HTML页面
缓存的目的我个人认为有2个:缓存复杂计算结果,或是绕过php脚本直接读取静态文件
ajax只是一种实现方式,在当前请求判断文件也是一样,终归是要走一遍php脚本
这样的缓存没有意义,复杂缓存机制代替了原本的数据查询和模板渲染,没有节省太多时间,除非你直接跳过PHP