恒星兼职网
所属栏目: 建站教程

Discuz!论坛阿里云分离部署菜鸟心得

时间:2018-01-02 12:25

最近一直在折腾一个论坛,恒星兼职网新域名上线7周年都忘记发篇文章了,这站更新频率现在有点不忍直视,主要是最近网站没搞好,没心情更新,现在网站终于逐步走上正轨了,也是时候更新篇文章了,体验站没啥写了,今天来简单说下我最近折腾的论坛分离部署。

恒星兼职网上面有很多的网站建设方面的内容,都是站长这么多年的一点心得,近期准备专门搞一个网站建设方面的网站,这个其实还是我比较擅长的,不求能赚钱,作为自己的一个笔记吧。很多东西都是记录在记事本上,搞个网站存着不会丢。

我论坛虽然流量不大,但是喜欢折腾,在这次搬家到阿里云的时候,就想着搞分离部署了,主要是方便今后维护和扩展,万一哪天火了呢,不用再折腾了。

Discuz!论坛程序分离其实也很简单,就是数据库、程序、图片程序三者分离,最多加上一个前段负载均衡。

Discuz!论坛程序分离部署的好处

1、提高性能:这点是肯定的,需要说么?流量大了,单机跑的话很容易就性能瓶颈了,以前高配的独立产权服务器,一到晚上就挂掉。

2、方便维护:程序坏了,覆盖程序即可,其它不用管,数据库坏了,恢复数据库备份快照即可。

3、降低成本:有的朋友可能要说了,分离要买多台,能够降低成本吗?答案是肯定的,阿里云5M以上带宽都很贵,等你流量大了就知道了。

Discuz!论坛程序分离部署简单实现方法

注意:购买的以下产品都必须在阿里云的同一个地区,比如都在华东1,最好在同一个可用区,程序ecs多台的话选择不同可用区,这样走的才是内网不会产生流量费,不同地区走的是外网,不仅会产生费用而且影响访问速度。

1、购买负载均衡SLB一台:我买的是5M带宽,4000并发保证,目前来看冗余度很大,可以降低。

用处:外网流量走负载均衡,可以添加50台后端ECS平衡流量

SLB负载均衡实际可以不买的,因为这个假如你的程序服务器只有一台,负载均衡的效果是完全没有用的,为什么要买呢,主要是为了隐藏真实服务器ip。,同时今后扩展也方便,价格和单独买高带宽的ecs是一样的。

域名必须要解析到SLB的公网ip,这样公网流量才能走负载均衡哦,我当时糊涂了解析到程序ecsip(只1M带宽),结果网站卡成翔,还找了半天原因……

2、购买云服务器ECS N台:我买了两台,实际只用了一台,2核心4G,带宽1M,带宽可以按量购买

用处:Discuz!程序放在ECS

这个ecs的作用就是用来放论坛程序,内存cpu配置需要高一点,假如论坛访问量太大的话,可以用多台ecs,添加到slb即可,我就搞了一台,实际没有达到负载均衡效果,主要是我看目前的流量根本就用不着多台了……

从目前来看,这台ecs的压力是最大的,内存和cpu使用的较多,也很好理解,论坛程序嘛,开启Redis缓存可以显著提高速度哦

由于这台ecs只放了论坛程序,因此假如被黑了,或者是程序坏了,那就好处理的很,直接程序覆盖上去,简单粗暴(注意,我的头像没有转移,看后文),建议创造一个快照,坏了直接恢复快照即可。

3、购买数据库RDS MYSQL版一台:我目前用的注册赠送的一台2核心4G5000并发保证的单机版,小网站单机版足以,坏了恢复即可,没必要高可用版。

用处:放Discuz!数据库,这是论坛最核心最重要的东西,整个论坛的数据都在这里。

好处:阿里云数据库专业人士维护,非常安全,只有白名单的ip才能访问数据库,不怕被盗,分离部署不怕服务器坏掉,每天自动备份,弹性扩展,随时查看性能等等

坏处:数据转移麻烦,只能通过DTS传输,数据库大了很慢,我6G数据库传输一次都要6个小时以上。版本限制,引擎限制。用这个RDS,我一旦优化帖子表,帖子表就坏了,测试期间整坏无数次了,虽然可以修复,但是总是隐患,其它的没发觉。

虽然有些问题,但是RDS是值得使用的,省去了很多麻烦,目前来看也非常稳定,速度极快。

我观察了几天,感觉论坛用最低配置的就行了,cpu使用一直在2%左右,内存60%不到,开了缓存,并发数竟然只有10个不到……,离5000的冗余实在是差太远了,到期了绝对要降低配置。

其实你也可以购买一台ECS单独建个数据库,和RDS效果一样的,而且维护还方便些,我也纠结了很久,最后还是选择了这个专业的数据库。

4、购买图片服务器ecs一台:1核心1G内存,5M带宽

用处:专门用来存放论坛的图片和附件

由于只用来存放图片和附件,cpu和内存是用不到的,最低配即可,带宽稍微大的,带宽不够其实也无所谓,最多论坛图片打不开,不影响程序使用。这个图片服务器可以用百度云加速、360加速、阿里云cdn等等,可以极大的降低带宽成本。

论坛图片和附件怎么同步请看教程:linux系统下Discuz论坛用rsync做远程同步附件服务器,通过我几天观察,运行良好。后来发现会员头像是放在uc里面的,需要单独分离,由于头像占用带宽较小,目前就算了。

分离部署的好处一是方便维护;二是降低带宽成本,阿里云5M以上带宽价格增长很贵,分离实现了10M的效果,但是价格便宜很多

这种方法实际上传带宽还是走的SLB,访客带宽走的图片ecs,要想真正的完全分离,要用到oss,不过配置很麻烦,需要插件和扩展,后期维护麻烦容易挂,不适合我等菜鸟,而且上传带宽实际用的很少,毕竟每天也没多少上传是吧,大部分访客下载流量。

以上就是简单的分离部署思路,具体操作就不说了,以后去专门的建站网可以分享下,这样分离后,图片服务器、程序服务器和RDS之间全部是走的内网流量,千兆带宽保证,外网走SLB和图片服务器带宽,不仅带宽压力小,而且方便维护

以上这个分离对于10万pv论坛已经足够了,程序扛不住了,增加程序ecs服务器添加到slb即可。

我这个配置总体选的都不是很高,但是比以前单独高配的独立产品服务器强太多了,而且价格也比较便宜,跑个10万pv无压力,以前程序执行都是1秒甚至几秒,现在0.03秒,百倍提升,以前论坛会员投诉最多的就是网站慢打不开,现在都说秒开,秒开的感觉确实很爽。

这次提速除了分离部署,php7和Redis缓存应该也有很大功劳。服务器无法升级和更换的,可以考虑升级到php7和更换为Redis缓存,做之前请备份好,弄坏了不要找我。

阿里云dz分离部署

希望网站能够稳定运营

恒星兼职网https://www.jianzhiwangzhan.com/zz/jc/2714.htmlDiscuz!论坛阿里云分离部署菜

------分隔线----------------------------
广告赞助