王海波:Discuz! X 社区功能架构

各位同仁大家好,我叫王海波,非常有幸跟各位在今天下午在这里做交流,discuz发展经过十年,discuz代码不是最优美结构也不是最优化,但这些不妨碍discuz作为一个最成功[url=javascript:;] PHP[/url]产品存在,它的成功有机遇在里面,更多是在于discuz时刻把握了时代发展需求,把握站长建站需求,把握用户体验需求,今天我想从discuz功能入手就这几个产品跟大家做一个简单的交流。 discuz!作为一个有十年历史,通过跟广大站长交流的一个完整社区,BBS原有功能无法满足新的需求和发展,09年年末到10年的3月份我们对整个产品体系做了一个调整,公司旗下所有产品进行整合,BBS作为基础设施打造一个完整社区产品就是discuz!X系列,我们现在是我们discuz!X系列大体架构,除了BBS基本功能,还涵盖门户,群组,个人空间,交友,社区运营管理,云服务体系,以及房产,品牌空间,Xplus开展功能,实际上我们这里面有两条主线,这两条主线围绕两个字成长。第一条功能主线是会员的成长,我们想象一下,作为一个论坛会员,注册进入到一个社区,开始只是发发帖子或者简单浏览,找到自己东西就走了,但这不是全部,更多人逐渐融入一个新的论坛一个社区,随着会员成长,发帖、回帖不能满足需求,人际交往,小规模内部交流这些需求随着会员成长逐渐显现出来,为此整个功能体系,交友,个人空间,这两部分功能是用来维系我们社区内部人际关系,这部分会员随着需求增长,不会由于原有功能单调离开这个社区,群组是为了社区当中一些已经成为[url=javascript:;] 明星[/url]式会员,或者一些小团队逐渐的,更加适于小范围交流,同时可以满足一些有领导欲望一些会员。 这是一条大主线,还有一条主线是社区成长路线,很多个人站点成功历史不难发现,很多站点初期建设的时候是一个简单论坛,网上下载一个程序找一个空间,很快一个论坛就搭建起来了,由于论坛形式特殊可以实时和会员之间交流,很容易这个小站发展很迅速,慢慢可能会发展成为一个行业或者一个领域当中一个主导媒体,论坛帖子站线形式是单一,单调,往往不能满足于一个中型大型论坛需求,论坛帖子不能够承载整个媒体功能,所以门户以及文章系统需求日益变得紧迫,这个前提下很多站点选择了找一套CMS程序,搭建门户,找一个论坛社区程序作为内部交流,这种形式在网上非常常见,所以我们在discuz!整个功能体系将门户功能纳入进来,满足站长建站需求。 房产,品牌空间,是社区站点增值需求,作为站点发展最终方向有可能影响站点发展规模,站长建立站点持久性,站点有一定盈利成为一个动力情况下,这些需要成为日益增长,我们在整个体系下当中,也把站点成长需求纳入进来,所以看似我们整个是一个很大很全的系统,我们两条主线是非常明确的。门户化功能,我们定位主要是提升社区媒体价值,这是很多发展中等甚至大型规模站点,往往的一个选择,还有一点需要注意的是很多我们在底下跟站长做交流,很多站长提到同样一个广告,放在论坛社区内部,放在我们的CMS系统展示,取得效果和收益是不一样的,这些广告投放效果成本也是不一样的,而且在论坛当中大量广告投放也会对会员浏览体验造成一些干扰,在门户功能化建设上面,提升社区媒体价值为主导。作为站长并不是一个标准PHP程序员,所以我们的门户化功能在第二个主旨就是简单易用,门户化功能主要是分为三个大部分,第一部分是框架,我们在这里面提供多种功能架构供站长页面选择,框架主要使命是布局。 第二部分就是模块,模块是各种数据聚合,用于在页面上展示需要的内容,第三部分是样式就是调控整个页面显示效果。我们为了让站长在设计自己页面,制作自己专题更加方便,我们采用全站DIY设置,可以在页面进行拖拉,无论是看帖页面,浏览,家园,文章页面,站长可以直接在上面进行数据元素添加,筛选,样式定义,扩充起来非常容易,作为当中重点模块,discuz!产品当中内置模块有几十个,每一个模块都是为了数据调用所用,除了内置模块以外,同时我们还支持模块扩展,作为站长可以使用任何一个熟悉的编程语言,比如说PHP等等,任何一种语言只要在输出按照我们定义格式输出,可以将内容定义成一个标准模块,规定模块现时样式,数据,更新方式,其他参数定义,最终由我们程序在程序解析以后在页面进行输出,我们现在看到效果有一些由调用的,并不是我们程序内置模块,外植模块可以用专业网络站点提供,我们这个站点提倡自己做一个天气预报,这个站点专门提供一个天气预报接口,任何一个站点将天气预报模块展示出去,站长可以手工搭建一个服务方式,为其他站点提供本站点特色内容,所以discuz站点有机融合在一起。 将门户与社区主题打通更方便的文章功能,discuz!X产品当中的门户功能并不是一个完整的CMS系统,也不会替代传统CMS,它的使命在于聚合社区资源,这是它的定位,所以我们在设计整个门户系统的时候,也将和社区的功能打通作为我们重中之重,所以我们在论坛浏览方面站长或者说相应管理员可以很方便将文档内容推送到门户系统当中去供编辑人员使用和浏览。一旦我们某一个帖子推送到我们门户系统当中了,它的评论,表态交互操作可以实时在论坛和门户当中实时显示进行沟通。这里面想讲一下门户系统与CMS简单的区别,并不是所有的门户系统只是局限于discuz!X它的门户系统,discuz!门户系统推出以后,我们受到很多站长置疑,功能,定位的置疑,很多人拿它跟比较流行的PHP比较觉得是不伦不类什么都不是,实际上我们定位在这里面决定我们产品部可能是一个完整的CMS,它和现在目前主要在定位上的区别,第一主要是为了降低站长建站成本,维护成本,快速搭建各种专题门户页面,维护一套程序和两套是不一样,两个,后台,程序,系统需要我们熟悉,站长来讲这种分担是比较重的。 而discuz!X当中,它的门户系统后台前台,完全和整个社区产品是融在一起,不 需要多个后台,也不需要熟悉多种操作模式习惯,只会用discuz可以很好调整门户系统,可以有效降低他的成本,门户系统更加注重对社区原有内容聚合,对论坛帖子内容再挖掘这是它的定位,第三就是倡导内容创新,忽略采集转发,传统CMS很重要功能就是采集,各式各样采集工具,可以有效收集各个行业媒体,新闻媒体当中一些精品资源,聚合到自己站点上来,做成一个像转发站一样,我们更加倡导内容创造,这是社区门户系统和传统CMS比较大的区别,所有内容来自于会员提供,来自站点创造。 所以来讲,每一个产品都应该每一个功能必须有一个明确定位,并不是大而全我们与站长交流经常体会到站长想法是什么?对于功能需求是什么,通常大部分站长我们发现都是某一个功能我可以不用,但是你不能没有,我们在这个论坛站点上包括我们discuz!技术支持论坛,跟站长交流经常会发现一个站长有这方面的想法,经常会提出某某系统有某某功能,某某程序优某某功能,我们也有,但是我们经过无数次尝试我们毕竟发展十年时间,从discuz!1.0,3.12,到6.0等等,每一个版本我们对原有功能有一些删减增加,我们在这些功能变更当中体会到这一点,用户提出需求未必是他需要的需求,想有和想用是两个概念,我觉得一个功能定位讲,任何一个成功的PHP产品来讲,完全依赖于用户的或者站长需求给自己产品做定位是不恰当的。 BBS本身就是一个互动性很强的一个产品,人会员动起来并不难,在于不断推出新的互动场景,在论坛当中提供新的互动元素,X产品对原有一些互动操作进行加强,我们增加点评功能,会员在原有旧模式下发表了一个主题我可以在后面回复这是基本功能,还可以对发表帖子点评,可以点评,可以平分,相当于积分互动,还有像置顶和提醒互动,会员每一个动作可以及时提供给好友,每个会员,主题变更对他自身产生影响,或者他关注,想详细了解我们都会通过提醒功能来促进会员对他们进行产生挥动。 这是discuz!X当中群组功能,我们可以称之为社区里面小团队,作用主要是两个方面,第一方面是要对原有论坛板块细分,整个一个论坛它的板块划分基本上是按照站长的意愿划分一些大条块,比如说灌水区,贴图群,群组就可以将内容进行细分,在X产品可以把任何一个或者多个群组关联到某一个板块当中来,这个群组当中发表主题都会作为板块内容一部分,而这些都可以作为板块内容补充,比如说贴图有一些专门建一个美女贴图群,这个板块发表内容,会补充到贴图区是对内容一个细分,第二大作用是人员上的群分,人欲群分,物以类聚,有人的地方会有小团队,通常情况下我们一个成功社区也好,大型社区也好,中型社区会在发展历史上看到这么一个现象,一个站点初期大家在论坛上进行交流,发展到一定阶段以后,会发现有一部分人开始慢慢剥离于这个论坛,建一个QQ群,或者自己拉一帮人单干,这种小群体发展对一个社区有可能造成好处,也有可能产生分裂,我们如果把这一部分人留在我们社区,对于一个站长来讲,社区来讲,这笔财富是不可多得,群组第二一个重要使命就是人员与群分,满足小团队,小人群交流,如果我们把论坛比做一个广场,像discuz1.0上来就是广场,就是指的我们论坛,群组好比酒吧,更加适合小群体。 会员个性展示空间,这一点不想多说,我们是从discuz!的5快事,已经逐渐完善这一部分功能,当中有很多的功能筛选比如说我们在5.5的时候,功能就废弃掉了,5.0重点推出在下一版本废弃掉因为我们有了新的产品,space,我们更加倾向于原来功能进行弱化,到后来一个产品我们推出一个迷你space,再往后我们迷你通过使用状况讲,我们大量抽样调查使用情况不是特别好,没有跟整个社区带来更多内容,或者挽留不住更多用户,我们就在今后几个版本一直没有对这方面加强,X产品当中借鉴了原油UCHOME部分对个人空间进行了小调整,像传统博客,space拥有相册,交友功能,满足会员个性展示需求,SNS可以说是目前比较热门的东西,我们作为我们来讲09年我们产品就是专业SNS产品,为了能够将会员与会员之间关系更加凝结,会员与会员之间交流更加通畅我讲SNS体系进入到这个产品中,满足会员与会员之间交际需求,也可以满足会员在一个社区当中娱乐需求,我们SNS体系当中,我们拥有一个非常强大平台就是漫游平台,游戏平台当中漫游应用各式各样SNS游戏,有上百款,这是我们不可多得资源因素,所以我们是可以满足它的娱乐需求。 其他这边产品作为一个站点发展当中不可或缺一部分,完成它的商业扩展,由于很多产品,像搜索功能,游戏,房产,品牌空间,以及xplus所有这些都是为站点服务,再往后还有可能有一些垂直性运营需求,我们有很多地方性站点他们需要一个房地产交易平台,不是说所有交易都在上面完成,主要能够聚合本地一些房产资源,展示给它的站上会员。所以这一部分产品主要是位于让站点向垂直领域发展做的尝试。前面都是我们X1.0,1.5包括有的功能,我们在新的产品当中我们增加了云服务,其中包括了QQ互联,漫游应用,纵横搜索,搜索膘情,腾讯分析和社区QQ群,这些云服务主要是用来服务站长的,最主要作用还是为了让站点增值,让站点运营更加方便,顺畅,为站点提供运营工具,运营分析,辅导工具。这些功能我们是在discuz!X2当中已经内置了,我们X2产品在过两周左右时间会在我们站长大会,互联网大会发布这个新的产品。 作为一个站点一个社区运营离不开管理,前面给站长提供那么多的功能或者说工具,作为管理工具也是不可或缺的,尤其是在目前网络监管严峻形势下,管理需求也是越来越强烈,管理的深度也是越来越广泛,我们X产品对管理划分几个大块,第一部分现在大家看到的日常管理,当中包括板块主题管理,板主管理面板,门户管理面板,DIY设计,我们都设计在前台,更多是用于日常数据维护。再有一部分就是后台的管理,discuz!后台划分为几个功能区,包括全区设置,界面,内容管理,用户管理,门户管理,论坛管理,群组管理,运营管理,还有插件,工具云平台,还有站长专用工具等等,所有这些后台大概棱棱总总不下上百个功能,我们经过十年逐渐积累和沉淀下来。 如此庞大一个后台,有可能管理者不是一个,我们在X产品当中设置运营与管理团队的功能,站长除了有站长和副站长两个本身原有职务以外,站长可以创建各式各样职务身份作为整个管理团队的成员,其中比如说像门户管理员,广场管理员,群组管理员,空间,用户管理员等等。每一个用户身份可以设置不同的权限要求,前面所说这些都是discuz!X在能上划分,里面还有很多细致功能,就不一一介绍了。 除了刚才我们讲的外在一些功能以外,作为一个成功的PHP产品,完全满足吗?也不是,我们这里面有一个补充给大家,简单说一下,一个是站点安全与防御体系,discuz!X从应该说从4.1开始当中加强一些关于安全防御方面的东西,这里面安全防御分几大部分,第一是内容安全防御,就是垃圾信息移植和一些灌水信息控制,我们划分为会员注册流程控制,新会员验证码机制,内容审核机制,发表速度控制等等,这些我们仍然是不能完全将网络上垃圾信息或者网推内容决绝在我们整个站点门户之外,基本上我们每一个版本只要有一个新的防御措施出来,一些网推软件会有一个新的攻击措施出来,我们一直进行焦灼战争当中,未来下一个新版本当中我们会加一个新的机制,用户行为分析,这是在我们云服务当中的,它是一套基于用户行为分析系统,来将用户所发表内容进行筛选和过滤,最终确认是否是一个垃圾信息,原有内容除了对用户控制,最简单一个措施比如说过滤词语要屏蔽用户发表ABC三个字在过滤词库加一个,用户会用各种方法,这些不能真正撤离杜绝,所以我们会在未来将用户行为进行分析,从而判别用户发表内容是不是跟社区原有内容相辅相成的,这部分有云服务即将加入到里面来,里面有很多案例,技术平台搭建是由腾讯提供,第二部分就是站点防御,我们常说CC防御,这里面有一点就是当一个站点遭受CC攻击会对会员产生影响,浏览会非常缓慢我们有四个方面防御措施,第一是IP范围限制,代理访问限制,COOKIE访问限制,安全问答限制可以抵御中小流量CC攻击,彻底防御更多是在[url=javascript:;] 服务器[/url]层面,面对突发式大流量攻击也有可能有一些瓶颈在里面,这是我们一小部分。 第三是跨站脚本防御是比较流行站点安全威胁,屏蔽掉一些安全参数,保证浏览者不会受到相应威胁,第四是sql注入防御,原来更多依赖于程序员对程序把握,写程序少写写错误代码,对所有变量进行过滤,我们在X1.5加入SQL注入防御系统,可以起到一个预防作用,我们程序当中出现一个安全漏洞,安全系统是打开,站长不会马上受到安全攻击,五是文件安全防御第六数据表结构安全防御是在论坛后台,对所有论坛脚本程序数据结构做了相应的MD5校正,再有是后台访问安全防御,后面有一些关于系统负载,不再详细说了。 我们未来,这里面没有完全的大的计划在里面公布给大家,第一我们将放弃PHP4支持,全面转入PHP5,我们用PHP4是为了吸引更多的站长,通过几年积累和抽样调查我们发现PHP4环境已经极少,不足我们目前大概1%左右,所以我们打算下一个版本全面支持PHP5,第二就是将会涉及更合理代码体系和有效平衡执行效率与代码开发和维护成本,第三就是更开放扩展接口,第四就是超大型社区系统厌战与承载能力,第五是更加丰富的云服务功能这是我们未来新的方向,下一个版本我们开发计划,这里面我们刚才简单介绍了一下整个discuz!功能架构,我也说它的代码不是最优秀,架构也不是最优秀的,是我们未来努力方向,谢谢大家。  

转载于:https://www.cnblogs.com/gxldan/archive/2011/12/20/4066777.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值