williamlong 2006-12-22 23:20
Z-Blog高效计数器插件
这个插件的名称虽然叫高效计数器,但含义是这样的:文章计数器的功能不直接操纵数据库,而是写入缓存文件,等一定时候手动将缓存文件的计数器内容写入数据库。从而实现了Z-Blog普通浏览不访问数据库的功能。
这个插件功能对于一般的Z-Blog并没有什么用处,只是对于访问量很大的Z-Blog系统有用,我以前也写过一遍文章,叫“[url=http://www.williamlong.info/archives/657.html][color=#0000ff]Z-Blog大访问量异常的解决方法[/color][/url]”,该文中我提出一种观点,就是Access数据库是Z-Blog的瓶颈,要想提高性能以应付大访问量的负载,就必须解决Access的瓶颈,方法就是不访问Access数据库。
在“[url=http://www.williamlong.info/archives/657.html][color=#0000ff]Z-Blog大访问量异常的解决方法[/color][/url]”一文中,我已经详细写出了相关的思路,只是当时我没有时间来实现这个功能,今天有时间,于是就写了一些代码,实现了这个早就想实现的功能。
代码实现的功能是这样的,将计数器的内容也当作文件写入Cache,系统读计数器,全部从Cache中读取,对外显示计数器内容也是Cache的内容,当想要将Cache的内容更新到数据库的时候,再点插件上的“保存计数器”,就可以将Cache的计数器内容写入数据库,这样,进行索引重建的时候,系统会将正确的计数器内容更新。使用这种方法,就可以做到大部分访问都脱离数据库,当在线连接数很大的时候,性能问题也有可能得到一定的解决。
解决了万恶之源:Access数据库之后,我尝试访问一下页面,速度的确感觉快了不少,真是不错啊。不知道微软为什么会发明Access这样一个怪物。
Z-Blog高效计数器插件的安装使用方法:counter目录放在PLUGIN目录下,c_count_js.asp放在根下,编辑TEMPLATE\b_article-single.html文件,在适当的位置加入以下代码。
<script language="JavaScript" src="<#ZC_BLOG_HOST#>c_count_js.asp?id=<#article/id#>" type="text/javascript"></script>
重建索引,重建所有文件。
这个插件对一般人来说不是必要的,除非你在线访问数的确比较大。使用这个插件后,每次进行文件重建前,都需要到插件区执行一下“保存计数器”,才能更新全部最新文章计数器。
原文地址:[url=http://www.williamlong.info/archives/730.html][color=#0000ff]Z-Blog高效计数器插件[/color][/url]
kola110 2006-12-26 19:34
虽然访问量不大,也加了玩玩,感觉速度是加快了:lol
LazyGG 2007-5-21 13:03
请问一下,我使用了这个插件之后,首页的每篇文章摘要下的浏览数不再刷新,而文章页面下的浏览数没有显示?而原来是可以正常计数的,文件我都按照说明上传到各自的位置上,在b_article-single.html里,我把
<script language="JavaScript" src="<#ZC_BLOG_HOST#>c_count_js.asp?id=<#article/id#>" type="text/javascript"></script>
这一段代码贴在
<script language="JavaScript" type="text/javascript">strBatchCount+="spn<#article/id#>=<#article/id#>,"</script>
的前面可以吗?
请指教!
[[i] 本帖最后由 LazyGG 于 2007-5-21 13:05 编辑 [/i]]
LazyGG 2007-5-31 00:57
请帮忙确认一下我在5楼的写出的修改是否正确?
谢谢!
Zx.MYS 2007-6-1 16:12
如果我记得没错的话……貌似1.7不需要这么修改的吧……
chunposoft 2007-7-11 14:10
只要是加快速度的东东都要支持...
随风漫舞 2007-7-12 11:57
呵呵。也是,我刚才就想这个插件可能就是减少数据库的访问次数吧。:lol