首頁 > 後端開發 > php教程 > 稿件流量统计,是否必须每次浏览都读写一次数据库

稿件流量统计,是否必须每次浏览都读写一次数据库

WBOY
發布: 2016-06-13 12:00:23
原創
872 人瀏覽過

文章流量统计,是否必须每次浏览都读写一次数据库?

本帖最后由 sky94132003 于 2014-06-20 00:50:06 编辑 比如一个新闻系统

文章表是news, 开个count栏记录流量?

想在文章中显示被浏览的次数

是否只在php中做成...每次访问

都在news中读出count栏的数值,然后+1

再写入?


这样会否对流量大点的时候做成负载太重?

是否也只能这样做?

我有使用到smarty模板引擎
除了做局部不cahac还有什么需要注意吗?



比如写成...:
$hits_now = $row["hits"]+1;
$pdo->exec("UPDATE `news` SET `hits`='$hits_now' WHERE `id` = '$id'");
这么简直的SQL就直接EXEC了吧?
------解决方案--------------------
1、只用数据库的话是需要每次做更新的(点击字段所在的表如果索引正常的话,每天浏览量在50万PV以下没压力的
2、语句注意过滤注入
------解决方案--------------------
可以将访问次数放在缓存中,例如 memcache 或者 redis 中之类。  统计开始的时候读取一次流量, 保存在缓存中,每次用户访问都将变量加一,到统计时间点的时候 再将其保存回数据库即可。。。 这样每次统计只需在最开始 和 最后两次读写数据库了。 一次读  一次写。。
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板