Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Discuz7.2实现分表功能(待续)

[复制链接]
zer0r2y 发表于 2010-2-26 14:38:06 | 显示全部楼层 |阅读模式
随着数据量的不断增大,单表的数据已经导致服务器负责非常高,虽然临时加缓冲层可以缓解压力,但是从长远角度考虑还不是根本办法。
官方一直没有把分表加入进来,所以我自己开始针对discuz7.2功能进行分表,具体步骤我会逐渐的写在下面,有兴趣的朋友可以一起探讨。



首先,修改forums表,增加一个字段,可以灵活的适版面大小情况把不同的版面划分到不同的分表
(向cdb_forums表里添加一个字段 subid,用于存储分表的值

其次,增加cdb_threads和cdb_posts分表【注意去掉主键的AUTO_INCREMENT】
(开始考虑增加一个字段,存储主表对应的id,但是后来想了想,还是保证主表和分表的数据结构一致比较好,相同的id对应的值,这样可以减少以后的工作量)

最后开始修改程序,需要把针对posts和threads表的所有读写程序都改一下,才能保证数据一致
        插入
        a) 发主贴
                include/newthread.inc.php
        b) 发回帖
                include/newreply.inc.php
        读取
        c) 读版页
                forumdisplay.php
        d) 读帖页
                viewthread.php
        修改和删除(管理)
        ......待续

如果不对帖子进行修改操作,现在帖子列表页和帖子页的数据已经是从分表读取了,后续我会把所有的修改全部写下来,敬请关注...

附件是修改的帖子

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

 楼主| zer0r2y 发表于 2010-2-26 15:37:25 | 显示全部楼层
怎么给我转移到文档版面来了,这个不是文档啊???
回复

使用道具 举报

mslxd 发表于 2010-2-26 21:04:47 | 显示全部楼层
呵呵,这个叫小技巧,不知道算不算帮助文档
回复

使用道具 举报

yangfeima 发表于 2010-2-26 21:13:10 | 显示全部楼层
顶了!..........
回复

使用道具 举报

caigen 发表于 2010-3-10 00:29:26 | 显示全部楼层
没有继续了啊LZ
回复

使用道具 举报

popuppp 发表于 2010-3-11 13:53:03 | 显示全部楼层
随着数据量的不断增大,单表的数据已经导致服务器负责非常高,虽然临时加缓冲层可以缓解压力,但是从长远角 ...
zer0r2y 发表于 2010-2-26 14:38



    X的情况下,下个版本,考虑了这个。
回复

使用道具 举报

youfu125 发表于 2010-3-23 23:10:00 | 显示全部楼层
学习了,支持楼主
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-24 05:44 , Processed in 0.028239 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表