互联网金融高并发、高可用平台系统整体架构设计

发布于 2019-02-12 | 作者: 不是猴子哥们 | 来源: 网易号 | 转载于: 网易号

整个系统分为以下六层,负载均衡层,网页缓存层,虚拟化APP层,数据库缓存层、数据库层,存储层,六层不一定都需要,要根据系统实际需求决定,每层所采用的技术说明如下:

系统逻辑架构图如下:

一、 网页缓存层

网站静态内容多,且不同文件格式多,建议上网页缓存,缓解后端web层服务器压力,所采用的方案为squid集群或者varnish集群,根据文件平均大小和总大小来确定使用技术。

二、 负载均衡层

采用免费开源的专业级负载均衡软件haproxy,根据访问内容正则分发,检测后端服务器状态,由于金融行业的特殊性,有些连接会采用ssl加密,因此根链接

三、 虚拟化APP层

采用vmware vsphere虚拟化技术,资源弹性分配,快速部署,满足业务逻辑角色的变化需求,充分利用服务器资源。

四、 数据库缓存层

将用户公用的,经常频繁访问的且无关紧要的数据缓存在内存中,可以采用免费开源的memcache、mongodb、redis来做,具体采用哪个,要看具体业务应用来决定,使用它们要注意他们的特性。

五、 数据库层

如果数据库采用mysql,那么数据库层采用mysql主主多从高可用系统架构,具体架构图如下:

架构说明如下:

Mysql双主采用双向复制,其中不管哪个节点挂掉都不影响访问,如果数据库读压力大,在mysql主服务器配置多个从服务器,并用lvs做负载均衡,缓解数据库压力。

如果数据库采用oracle,且有共享存储,则采用oracle RAC集群方式实现高可用,否则采用data guard 实现双机热备。

六、 存储层

解决多台web 服务器数据之间同步问题,将网站数据放在共享的存储上并挂载到每台web服务器来解决,如果要做oracle rac集群,那么存储必不可少。数据库的数据可以放在存储,备份同样可以。