今日话题数量如何实现

WBOY
Freigeben: 2016-06-06 20:30:45
Original
1126 Leute haben es durchsucht

就是一般论坛的今天发帖数量是怎么实现的 是不是php自动24点的时候清空下数据库里面今天发帖数吗 有大神给段代码吗

回复内容:

就是一般论坛的今天发帖数量是怎么实现的 是不是php自动24点的时候清空下数据库里面今天发帖数吗 有大神给段代码吗

具体要看你需求有多大,比如小论坛帖子数量比较少,直接使用 sql 查询当天的数量

<code>select count(*) from item where created_at >= curdate();
</code>
Nach dem Login kopieren

但是用户多一点,帖子也多了一点,总是实时计算,性能不好,你可以建立一张表,有用户发新帖的时候将数量 +1

<code>create table topics_num (created_date date, num int, primary key (created_date));
-- 查询
select num from topics_num where created_date = curdate();
</code>
Nach dem Login kopieren

但是用户又多了,帖子又多了一点,总是要查询数据库,性能又不好了,而且还有并发问题导致数量不正确,这时候需要更快的计算方式,使用缓存,比如 redis

<code>$t = new DateTime('today');
$key = 'topics_num_' . $t->format('Y-m-d');

// 当有人发新帖时
$redis->incr($key);

// 需要获取数量时
$redis->get($key);
</code>
Nach dem Login kopieren

可以有多种实现方式。
redis,文本,SQL都OK

写个定时化任务搞之

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage