腾讯科技讯 4月7日,在今日召开的第七届站长大会“互联网产品与创新高峰论坛”上,Discuz! 产品总监李国德向大家介绍了Discuz!X2.5的改进情况,他表示,Discuz!X2.5功能改进是197项,主要涉及数据库操作的317个程序文件,4525处代码片断修改,DB类文件217个。
以下为演讲实录:
2012第七届中国互联网站长年会今天在北京国际会议中心召开。会议主题为“借船出海谋发展 共赢社区云时代”,议题包含“借平台创业 ”、“移动新机遇”、“共赢云时代”等。
李国德:谢谢各位来宾,谢谢各位站长。我用一个比较简短的时间向大家描述一下Discuz!X2.5我们所做的改进。
首先我们一起来看一下Discuz!X2.5的一些数字。功能改进是197项,主要涉及数据库操作的317个程序文件,4525处代码片断修改,DB类文件217个。研发耗时我们使用了5个月的时间进行代码的研发和架构改造,历经了颁布的发布,当然前面还有内测,三个月的时间来进行产品的完善。
新改变最多的还是围绕架构和性能,其次是应用和升级,接下来是新功能的元素。
为什么我们要花这么大的力量来进行数据层的改进?我通过四个点来回答这个问题。
因为我们的功能要进行模块化和插件化,通过封装的API就可以避免Discuz!不兼容,这个插件可以无成本低来使用Discuz!内制的性能优化体制,包括内存的优化,内存缓存的使用,多服务器部署等特点。同时我们对数据的写入进行了统一的安全处理,这样可以让你的插件变得更加安全。
第二点,我们让数据表全面支持内存缓存。在之前X2的版本里面,如果你想给Discuz!加内存的缓存支持是非常困难的,因为它的数据的读写是分散在不同的程序文件里面,这样你给每个表要加缓存的话,你要改大量的分见。所以在封装的体系下增加缓存的功能就非常简单,而且我们已经内置了缓存的支持。
这个图它表达了缓存加入以后,对你的数据库负载减轻的原理,就是用户读写会同时更新缓存和数据库,但是读只从缓存里面读,你的数据库够变成了一个数据的备份体,它不会承载读的压力,就减少数据库锁等等的性能的问题。
这个图就是我们新的版本里面,对内存的一些设置,整个内存包括各种表,用户表,主题表,等等都可以进行缓存的启用。
数据表需要支持分服务器部署,和内存缓存一样,在以往的数据架构里面,分散的数据读写,导致如果想对一个单台服务器部署是不可能的,主题表就是孤立的一个文件,你就可以把主题表放在一台服务器上,你可以把一个用户表放在一台服务器上,这样你可以根据你的网站的负载压力,来决定你的服务器的部署方案。
第四点,是写入数据更安全。之前的版本我们Discuz!有一个机制,就是把页面的变量进行了统一的处理。这样的化会导致漏洞的出现,现在我们把数据安全处理,放在数据存储的最底层,你只要经过这个接口,我们就可以进行安全的检查,让你的程序更安全。
在新的版本里面,我们做了一些优化,第一个就是针对用户表,这是我们针对我们跟一些比较大型的网站进行数据挖掘得到的一个数据,这些主流的网站里面,90天未访问的用户,82%的用户90天没有访问,这个数据比较惊人的在于,365天没有来的占60%,大部分网站60%的用户是一年没有来的。
我们的用户优化的思路就在这里,我们希望我们认为70%的用户都是僵尸用户,它大大占据了你服务器的存储,或者数据库压力的平衡点,我们产品里面就引入了一个新的机制,我们把用户进行了存档,把活跃的用户放入内存缓存,存的数据当用户自己来登陆的时候,我们会把僵尸用户变成活跃用户,放进高速缓存里面,这样让你网站的负载压力大大减少,而且把你服务器的优势都提供给活跃用户,这是我们第一个优化思路。
第二个,是我们对主题查看数的更新做了优化,以往Discuz!产品里面,很多站长比较头疼的问题,特别对一些尤其活跃的网站来说,它在一分钟之内会无数的主题被查看,我们每隔几分钟在准点的时候进行批量更新,在更新的时候会造成数据库的压力。我们针对这点进行了优化,我们新增了一个临时表,这个表是时时更新的,你在前端看起来的查看数是完整无缺的,但是这个临时表我们也增加了一个定时定期定量的同步一个机制,来解决这个主题查看数更新的问题。
第三个问题,也是很多网站头疼的问题,就是高楼帖的问题,尤其在举办活动,或者当你网站的用户特别活跃的时候,比如可能很多人去过一些小米网站,你一个帖子发出来以后,瞬间可能就一百个扉页没了,这种网站它的负载压力还是非常头疼的一个问题。因为这个问题是它自己本身的问题,他的机制当(英语)越靠后的时候压力越大。
我们在新的机制里面,我们引入了一个直接定位的概念,无论你的扉页是第几页,我们会直接找到开始标位,直接进行一个查询,这样就避免了这个压力。
这几点,也是大家非常关注的一些性能优化点,针对DIY这块,因为它没有用到MySQL的缩印,避免带来的(英语)的压力。
同时我们针对点评,评分,使用频繁的网站来说,也进行了内存的引入,来解决性能问题。
我再给大家介绍一下我们新版里面的一个改进,叫用户中心,可以让站长非常方便的通过用户中心找到自己想要的拓展功能,包括点评,包括插件的兼容性,一目了然。在介绍页面里面大家可以看到这个插件有多少人点评了,有多少人关注,都可以一目了然。
在Discuz!X2.5没有发布之前,都是基于测试版提供的,所以那个数据也并不是一个大普及的数据,但是在我们测试的情况下取得的数据还是非常乐观的。我们在今年1月份刚刚推出,到1月中旬就有2276个网站使用了用户中心,截止到3月中旬,已经达到15199个站点,这个蓝线就是代表每月的用户中心站点使用量。应用的安装量到目前为止达到53102次,平均每个网站安装3.85个应用。红线就是应用的安装次数,大家可以看到红线,在今天中午之后,这个红线基本上成为竖线。
推荐阅读
腾讯科技讯 4月7日消息,康盛公司总裁戴志康( 微博 )表示,康盛科技正在积极布局移动互联网业务,推出的移动互联网产品掌上论坛正在不断优化中。戴志康认为,移动互联网对社区的发展是契机与危机并存。 戴志康称,移>>>详细阅读
本文标题:Discuz!产品总监李国德:新版功能改进197项
地址:http://www.lgo100.com/a/kandian/20120407/48902.html

网友点评
精彩导读
科技快报
品牌展示