织梦DEDECMS建立模型、简单分表、索引优化操作方法
<p>首先,要先建立一个模型,建立模型的方法寂寞天涯 已经写过专门的教程,不过要注意的是建立模型之后要新建一个字段,名字是:文章正文,英文名是:body,要选择html文本存储模式。固定发布模式。这 样你就可以看到多了两个数据表,一个是dede_archivesXX,一个是dede_addonXX,可以自己取名。我们主要的操作在这两个表上进行。</p><p><img src="https://img.jbzj.com/file_images/article/202105/202105111250210.png" alt="" /></p>
<p>然后开始我们的主要操作:后台系统管理-系统帐号管理-SQL命令运行器</p>
<p>看到下面的运行小窗口了吧,我们在这里运行SQL的命令。</p>
<p>主要命令步骤如下:</p>
<p>一、insert into dede_addonX select * from dede_addonarticle where typeid=Y</p>
<p>这个dede_addonX就是刚刚我们建立的两个数据库中的一个,是一个附表。<br />
这句话的意思是我们把dede_addonarticle(原来的大表)中的某一个档目(文章栏目数字号Y)中的所有数据复制到dede_addonX这个表里。</p>
<p>二、insert into dede_archivesX select * from dede_archives where typeid=Y</p>
<p>这个dede_archivesX是我们刚刚建立模型中的主索引表,这句话的意思和上句一样。</p>
<p>三、UPDATE `dede_full_search` SET `channelid` = 'X' WHERE `dede_full_search`.`typeid` =Y</p>
<p>将两个表复制完之后我,我们需要把我们DEDE数据的主索引表进行较正。</p>
<p>四、UPDATE `dede_archivesX` SET `channel` =X WHERE `typeid` =Y</p>
<p>再将我们的文章模型索引表进行较正</p>
<p>五、delete from dede_addonarticle where typeid=Y</p>
<p>将原来已经复制过的数据在原表删除。</p>
<p>第六步、频道管理,相关档目修改-基本设置</p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250211.png" alt="" /></p>
<p>内容模型选定刚刚建立的那个模型,然后点高级设置,要设定相对应的模板。然后最下面的继承选项,选定之后整个栏目都会按这个设置顺承。</p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250212.png" alt="" /></p>
<p>最后,大功告成,大家可以看看里面的档案了,如果能显示,说明你成功了。</p>
<p>这个操作主要应用于文章模型,其它模型还没有实验,不过大同小异,应该可以实现。<br />
打个比方,这就相当于,把一个大水库分成若干个小水库,然后通知接水的人,去小水库接水。这就是DEDECMS的分表。</p>
<h2><strong>30万条2GB数据网站平台生成HTML网页每分钟超过1000张</strong></h2>
<p>使用DEDECMS一年多时间,看了论坛上很多站长在抱怨DEDECMS系统生成HTML速度慢,其实不然,只要恰当对服务器平台和数据库进行优化,生成速度会有质得提升。</p>
<p>下面我提供一组数据,大家对比一下你网站的数据量和生成速度,能不能有提升的空间。可能有部分站长优化得比我好得多,我只在这里献丑了!</p>
<p>并且提供优化的方法,可能这些方法是官方为商业客户服务的,大家有能力的话可以自己试着做一下。</p>
<p>本人负责建设的网站现有780-1000的并发连接(实时查看网址:http://www.tzsy.cn/status)网站数据库有30多万条,内容大概有六个模型,六个内容表数据量比较大,全部合起来有3GB,在给其中一个有5万多条的栏目生成网页时每分钟超过1000张的速度。</p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250213.png" alt="" /></p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250214.png" alt="" /></p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250215.png" alt="" /></p>
<p>大家分析一下上面三张图的数据,DEDECMS的潜力还是可以挖掘的。</p>
<p>硬件的基本情况,不算特别好,IBM服务器:CPU 四核至强,内存2GB,数据库安装在146GB的SAS硬盘上,站点文件存放在500GB的SATA硬盘中。</p>
<p>现在我简单描述一下优化措施。</p>
<p>一、安装 CentOS 5.2,装最基本的组织,MySQL,PHP,APACHE都不要安装,以后自己下载源码编译安装。</p>
<p>安装完成后运行setup配置系统服务命令,设置以下仅列出需要启动的服务,未列出的服务一律关闭:<br />
crond<br />
irqbalance 仅当服务器CPU为S.M.P架构或支持双核心、HT技术时,才需开启,否则关闭。<br />
microcode_ctl<br />
network<br />
iptables<br />
vsftpd<br />
sshd<br />
syslog<br />
yum-updatesd</p>
<p>二、搭建胜过Apache十倍的高并发Web服务器 Nginx + PHP(FastCGI)</p>
<p>具体配置不再描述,大家参考张宴的文章 http://blog.s135.com/nginx_php_v5/</p>
<p>提供我的配置截图</p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250216.png" alt="" /></p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250217.png" alt="" /></p>
<p><strong>三、安装编译 MYSQL数据时编译参数设置注意三点</strong></p>
<p>1. -static 13%<br />
--with-client-ldflags=-all-static<br />
--with-mysqld-ldflags=-all-static<br />
静态链接提高13%性能</p>
<p>2. Unix Socket 7.5%<br />
--with-unix-socket-path=/tmp/mysql.sock<br />
使用unix套接字链接提高7.5%性能,所以在windows下mysql性能肯定不如unix下面</p>
<p>3. --enable-assembler<br />
允许使用汇编模式(优化性能)</p>
<p>四、优化DEDECMS数据表索引。官方的默认索引不是最优化的,可能DEDE官方有所保留。</p>
<p>大家下载一个叫 Navicat for MySQL 的客户端软件连接到MySQL Server数据上进行管理操作。</p>
<p>个人认为:凡是要排序的字段(比如文档主表的 sortrank、senddate、pubdate、click、goodpost、badpost)和查询条件的字段(比如:typeid,ismake)以及文档ID都要建立索引,如果有一个没有建立,将严重影响MySQL运行效率,导致生成HTML时速度慢。</p>
<p>当系统启用了审核机制以后,标识文档审核属性的字段ismake必须建立索引。</p>
<p>注意:click这个字段,记录文档点击量,此字段值更新频繁,建立索引后对系统维护索引带来一定的负荷,大家自己权衡。有人说频繁更新的字段建立索引会容易导致数据库损坏,这个我还没有遇到过,需要考证。</p>
<p>下面是主表索引建立的截图</p>
<p><img src="https://img.jbzj.com/file_images/article/202105/202105111250218.png" alt="" /></p>
<p>到此这篇关于织梦DEDECMS建立模型及简单分表操作方法经验的文章就介绍到这了,更多相关DEDECMS分表内容请搜索琼殿技术社区以前的文章或继续浏览下面的相关文章,希望大家以后多多支持琼殿技术社区!</p>
頁:
[1]