前言:对于金融行业,互联网线上业务首先要保证的是高可用性和安全性!那么问题就来了,高可用性主要是哪些方面呢? 安全性又有哪些呢?那么接下来我就一一阐述下我个人实际操作中的分析;
所谓高可用性就是服务器能7*24不间断的能够提供正常服务:
那么我认为要做到这一点就需要保证:
1.服务器的架构设计上不能存在单点;
2.服务能够智能重启(卡死后重启或服务停止自动重启);
3.服务器性能监控;
4.服务器架构设计可扩展性要强;(根据需求)
做到以上的前3点,我认为基本上能够解决大部分的问题。
安全性: 在互联网背景下,安全是一个不容忽视的问题,安全因素又会存在很多,那么我们应该如何看待安全呢?
首先对于一个cms系统来说,程序设计上本身就会存在安全隐患,那这个当然是程序员的事了,跟运维没多大关系,那么我要讲的是运维所要做的事情;
1.服务器硬件安全;
2.网站后台登陆安全;
3.防止网站挂马被黑;
4.系统安全;
5.数据库安全;
6.软件安全;
7.网络安全;
8.自然灾害
从以上来看,也许你们还看不明白,我概括的也比较笼统,接下来我会对以上的内容逐一分析和介绍;由于时间 原因我先就说一点吧;
a.服务器架构不能存在单点:
顾名思义,单点会导致可用性降低,如果服务器宕机,那么恢复起来将会耗费很长时间,这样对业务的影响将是巨大的。所以在线上业务开展之前,服务器的架构设计就需要把这一点考虑进去。那么我们是如何解决这样的单点问题呢?
首先,我们要按照组来划分服务器(按照实际业务量设计),我就按照我设计过的这家金融cms为例子!
1.web划分1组服务器(2台);
2.DB划分1组服务器(2台);
(备注:web和db可以是同一组;这也是解决单点最小单位,必须保证有两台服务器同时提供相同服务);
web服务器提供的是http访问,两台同时提供,如果有一台宕机,会自动切换到另外一台上面 (如何切换我后面会讲到);
db服务器提供数据库服务,两台数据库存放相同的数据,如果一台宕机。自动切换到正常的一台上面(如何同步数据和切换后面在数据库安全会讲到)
从上面的思路来看,大家是不是解决了单点问题了呢 无论那一台服务器宕机都不会影响线上业务(除非你两台web宕机或者两台db同时宕机,如果出现这种情况也没什么卵用了)
关注我,接下里有时间继续下面的分析 PS:都是自己的实战经验,勿喷!!
|