博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
phpcmsv9的评论分表策略
阅读量:5137 次
发布时间:2019-06-13

本文共 806 字,大约阅读时间需要 2 分钟。

comment_table表

comment表

 

comment_data_x表

 

我们留意到:

  1. comment_table表统计每个comment_data_x表里面有多少条记录,
  2. comment表只是记录文章id和tableid,
  3. 而comment_data_x则是记录评论信息。

实际上,v9的分表逻辑很简单,如果某个文章要新增评论,则判断comment表有无记录,有则这条记录不进行分表判断,若无记录,则判断comment_table的最后一个表是否达到了分表的条件。

if (!$comment = $this->comment_db->get_one(array('commentid'=>$commentid, 'siteid'=>$siteid), 'tableid, commentid')) { //评论不存在    //取得当前可以使用的内容数据表    $r = $this->comment_table_db->get_one('', 'tableid, total', 'tableid desc');    $tableid = $r['tableid'];    if ($r['total'] >= 1) {
//当上一张数据表存的数据已经达到1000000时,创建新的数据存储表,存储数据。 if (!$tableid = $this->comment_table_db->creat_table()) {
$this->msg_code = 4; return false; } } }

这样做的好处也很简单,避免了同一个文章的评论分散在不同的comment_data_x表里面。

转载于:https://www.cnblogs.com/zenghansen/p/5315534.html

你可能感兴趣的文章
ABAP版连连看
查看>>
UI基础六:UI报弹窗确认
查看>>
SAP跳过权限检查/前提是有debug权限
查看>>
13年学习
查看>>
HTML5+ API 学习
查看>>
CodeForces 670D2 Magic Powder 二分
查看>>
不能以方法的方式使用不可调用的“system.web.httprequest.querystring”
查看>>
试用dotnetbar10,提供下载链接
查看>>
iptables动作总结之一
查看>>
Integer to Roman——相当于查表法
查看>>
关于ldap的学习
查看>>
JDBC获取表的主键
查看>>
[转]SpringMVC Controller介绍及常用注解
查看>>
Django----djagorest-framwork源码剖析
查看>>
在日本做开发的日子(工作篇 富士通的第一周第一天)
查看>>
河北科技创新平台年报系统
查看>>
element ui 修改默认样式
查看>>
4.28 QBXT模拟赛
查看>>
转!!Tomcat网站上的core和deployer的区别
查看>>
OpenLayers
查看>>