Discuz论坛是国内使用最多的论坛系统,现在最新版为X 3.4,X3.4 从 2018 年 1 月 1 日起只在官方 Git 发布,地址:https://gitee.com/ComsenzDiscuz/DiscuzX,说明已经开源了。discuz有那么多的粉丝,跟它完善的功能有很大关系,开箱即用,很多优化可以直接在后台设置,应对高并发/大数据量,那么discuz怎么优化呢?可以从以下几点来进行,跟ytkah一起来看看吧。

1、性能优化

  首先想到的是内置的性能优化,在后台的 全局 - 性能优化

  discuz服务器优化:

  是否优化更新主题浏览量:是

  查看数开启防刷新:是。如果选择“否”,主题、空间、日志每访问一次,浏览量增1,会增大服务器压力,建议选择“是”

  附件下载量延迟更新:是。延迟更新附件的浏览量,可明显降低访问量很大的站点的服务器负担,建议开启本功能

  最大在线人数:范围 10~65535,建议设置为平均在线人数的 10 倍左右

  在线保持时间(分钟):根据访问情况设置合理的数值,访问量大的站点应当调小该数值,设置范围 5 - 60,过大或者过小的设置都有可能会增大服务器资源开销

  开启图片延时加载:是。当开启后,页面中的图片在浏览器的当前窗口时再加载,可明显降低访问量很大的站点的服务器负担,建议开启本功能

  参与模块聚合数据条数:此值影响模块聚合时MYSQL检索数据的条数,设置太大将严重影响MYSQL的性能,设置太小将会影响模块聚合结果数据的理想程度。0为关闭此功能

  是否关闭session机制:关闭session机制以后,可明显降低站点的服务器负担,建议在线用户数超过2万时开启本功能(注意:游客数和用户的在线时长将不再进行统计,论坛首页和版块列表页面的在线用户列表功能将不可用)

  discuz内存优化

  启用内存优化功能将会大幅度提升程序性能和服务器的负载能力,内存优化功能需要服务器系统以及PHP扩展模块支持

  目前支持的内存优化接口有 Memcache、eAccelerator、Alternative PHP Cache(APC)、Xcache、Redis、YAC、APCu,优化系统将会依据当前服务器环境依次选用接口

  内存接口的主要设置位于/config/config_global.php 当中,您可以通过编辑 config_global.php 进行高级设置,详细参考 discuz config_global.php文件设置说明

  discuz论坛页面缓存设置优化

  缓存论坛首页有效期:设置论坛首页缓存更新的时间,单位为秒,0 为关闭(此处关闭以后,缓存系数将不再起作用),建议设置为 900。此功能只针对游客

  缓存帖子有效期:设置帖子页面缓存更新的时间,单位为秒,0 为关闭。请根据实际情况进行调整,建议设置为 900。另外,请通过编辑论坛来指定帖子页面缓存系数

  缓存系数:页面缓存功能可以将会员经常访问的主题临时缓存起来,缓解大型论坛服务器压力。缓存阀值范围 0 - 100,建议设置为 40 ,0 为关闭。在磁盘空间允许的情况下,适当调高缓存系数,可以提高缓存效果

2、discuz防灌水设置

  discuz有一套完善的防灌水设置,我们可以设置邀请注册、邮箱验证、只能QQ/微信登陆、发帖时间间隔、词语过滤等

  词语过滤是非常关键的,一不小心论坛就会被关闭,甚至更严重,已经有很多先例了,所以设置一套完整的敏感词过滤机制非常重要

3、dicuz手机端优化设置

  现在互联网的流量都集中在移动端了,一个好的手机模板非常重要!discuz手机模板可以采用移动网页加速器(MIP)。①MIP 提供与 MIP Runtime 兼容封装好的组件来实现,不允许自定义 JavaScript 。②使用inline的css,CSS 内联可以减少客户端的开销。③MIP缓存能够帮站长加速网页,MIP-Cache 将会把 MIP 网页缓存到百度 CDN 中。更多MIP详情请参考https://www.mipengine.org/doc/03-principle-of-mip.html

4、https设置

  HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Secure,超文本传输安全协议),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。

  HTTPS和HTTP的区别主要为以下四点:

  ①、https协议需要到ca申请证书,一般免费证书很少,需要交费。

  ②、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。

  ③、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

  ④、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

5、discuz SEO优化

  伪静态设置:URL 静态化可以提高搜索引擎抓取,开启本功能需要对 Web 服务器增加相应的 Rewrite 支持

设置完以后要在.htaccess文件写入伪静态代码

6.discuz CDN优化

  CDN的全称是Content Delivery Network,即内容分发网络。依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。特别是js、css、图片,放在cdn上加载速度更快。

7、discuz开启Gzip

  假设我们访问的一个页面有100kb,如果已经开启Gzip了,服务器会把这个页面压缩成zip文件,可能只有10kb或更小,就会节省带宽和下载时间。当浏览器可以下载zip文件,解压,并且渲染给用户。下载很快,页面加载也很快。

8、discuz数据库优化。

数据表优化可以去除数据文件中的碎片,使记录排列紧密,提高读写速度。

后台 - 站长 - 数据库 - 优化

后台 - 站长 - 帖子分表/用户表优化/主题分表。分表功能可以将帖子分在不同的数据表中,适合帖子数很多并且运行效率受到影响的站点使用

9、discuz插件筛选

  在没有必要的情况尽量少装插件,有些插件调用很多sql反而降低效率

10、discuz模板优化

  精简压缩css/js文件,尽量减少js的使用,或者使用封装好的js

  以上是discuz优化常见的一些方法,最核心的是要减少sql数,所以在开发的过程中硬磕sql语句,不管是模板、插件、功能实现,开启debug模式,想方设法去降低。相信你会把discuz优化得很好。如果您有更多优化的方法欢迎留言探讨!

discuz优化10个小技巧的更多相关文章

  1. UITableView的性能优化10个小技巧

    通常你会发现一个图片类的app会在一个imageView上做下面这些事情: 1  下载图片(主要的内容图片+用户头像图片)2  更新时间戳3  展示评论4  计算动态的cell的高度 Tip#1 学习 ...

  2. iOS-UITableView的性能优化10个小技巧

    通常你会发现一个图片类的app会在一个imageView上做下面这些事情: 1  下载图片(主要的内容图片+用户头像图片)2  更新时间戳3  展示评论4  计算动态的cell的高度 Tip#1 学习 ...

  3. (译)关于使用Eclipse Memory Analyzer的10点小技巧

    作者 Rave_Tian 2016.02.01 17:56* 字数 2988 阅读 520评论 0喜欢 0 分析和理解应用的内存使用情况是开发过程中一项不小的挑战.一个微小的逻辑错误可能会导致监听器没 ...

  4. 前端网络、JavaScript优化以及开发小技巧

    一.网络优化 YSlow有23条规则,中文可以参考这里.这几十条规则最主要是在做消除或减少不必要的网络延迟,将需要传输的数据压缩至最少. 1)合并压缩CSS.JavaScript.图片,静态资源CDN ...

  5. 10个小技巧助您写出高性能的ASP.NET Core代码

    今天这篇文章我们来聊一聊如何提升并优化ASP.NET Core应用程序的性能,本文的大部分内容来自翻译,当然中间穿插着自己的理解,希望对大家有所帮助!话不多说开始今天的主题吧! 我们都知道性能是公共网 ...

  6. 使用google搜索时的10个小技巧!

    为大家分享一些google的技巧,很多工作了好几年的同学还不知道如何高效的利用这些技巧,希望同学们掌握!此为google的技巧,百度现在也基本上都实现了这些功能.   使用搜索引擎的10个搜索技巧   ...

  7. VMware 12安装虚拟机Mac OS X 10.10使用小技巧(虚拟机Mac OS X 10.10时间设置,虚拟机Mac OS X 10.10通过代理上网,Mac OS X 10.10虚拟机优化,VMware虚拟机相互复制)

    1:修改Mac OS 系统时间 2:Mac OS系统 通过代理上网 VMware 12安装Mac OS X 10.10虚拟机优化心得 虚拟显卡硬伤,所以必须要优化下才能用,优化的原则就是能精简的精简, ...

  8. Java性能优化的十条小技巧

    1 System.nanoTime 测试性能时,System.nanoTime比System.currentTimeMills更精确,前者使用纳秒计时,且对系统影响更小. 具体来说: System.c ...

  9. Win Server 2003 10条小技巧

    微软推出Windows Server 2003已经有一段时间了,但是,由于它是一个面向企业用户的服务器操作系统,所以,没有引起更多个人用户的注意.实际上,简单地改变一下系统的设置,您也可以将Windo ...

随机推荐

  1. Linux软件安装中RPM与YUM 区别和联系

    .tc-nav-row{ height:38px; margin: 8px 15px; } .tc-nav-tab{ text-align: center; color:#333333; line-h ...

  2. Eclipse的Project Facets属性

    Project Facets 1. 'Project Facets'可理解为:项目的特性,主流 IDE (Eclipse IDEA) 都提供了 facet 的配置.  'Project Facets' ...

  3. invalid bound statement (not found)解决办法

    最近搭建一个web项目后端SSM框架练手,使用Maven管理,遇到一个深坑invalid bound statement (not found),就是mapper文件扫描不到!!! 先上整合过程,解决 ...

  4. [原]NTP时间服务器简单设置

    ====server edit   /etc/ntp.conf 添加 server 127.127.1.0 fudge 127.127.1.0 stratum 1 fudge 127.127.1.0 ...

  5. 【JavaScript】--- ES6/ES7/ES8

    一.async async其实是ES7才有有的关键字,async的意思是异步,顾名思义是有关异步的操作 async用于声明一个函数是异步的. 通常情况下async.await都是跟随promise一起 ...

  6. Mac Mini2018 开箱(视频)全球首映!Kindle 开箱一并奉上(文字)

    2018.12.9更新 为了方便大家收看我的这个开箱视频,我把视频放在知乎上了,可以参考如下连接即可观看啦: https://zhuanlan.zhihu.com/p/51677467 ------- ...

  7. ubuntu16.04下安装配置pl-svo

    Semi-direct Visual Odometry(SVO)安装配置 https://blog.csdn.net/seymour163/article/details/53947764 http: ...

  8. app相关的一些网站

    https://www.qimai.cn   排名排行关键字原aso100

  9. DACLs and ACEs

    [Windows]Windows的访问控制模型 - Zplutor - 博客园 https://www.cnblogs.com/zplutor/archive/2010/01/05/1639892.h ...

  10. cocos2dx 常用的构建工具

    理编辑工具Physics Editing ToolsMekanimo 网址:http://www.mekanimo.net/PhysicsBench 网址:http://www.cocos2d-iph ...