• 技术架构 - 应用数据分离,应用服务集群架构


    前言

        上一篇文章介绍了单机架构,由于性能瓶颈,满足不了高访问量,所以演化出了数据分离架构。

    这种架构也很简单只是将应用服务和数据库服务分离开来,避免单一架构的资源争夺的情况。

    一、 应用数据分离架构

    1. 简介

        应用服务和数据库服务使用两台服务器进行分别部署,应用服务就是对外提供服务的,数据库服务就是用来存储数据的。

    2. 出现原因

        单机架构存在严重的资源竞争,导致网站访问速度变慢。

    3. 架构工作原理

        以电子商城网站为例,用户访问淘宝网站,开始还是先访问 DNS 服务器,之后拿到 淘宝服务器的 IP 之后就去请求这个服务器的资源,此时的应用服务和数据库服务两台服务器是通过网络进行通信的,所以在请求商品信息的时候还是访问服务层,服务层再去查询数据库,只是这个操作是经过网络来完成交付的,和单一架构就这一点有区别。

    4. 架构优缺点

        优点:1. 成本比单机架构高一点,但是相对来说是可控的(原来部署一台服务器,现在部署两                      台服务器)

                   2. 性能比单机架构提升了一点。

                   3. 数据库是单独存在的,如果如果应用层出现了一个 bug,这个 bug 会导致数据库的数                     据损坏,此时不会因为这个 bug 而弄丢数据库的数据。具有一定的容灾能力。

        缺点:1. 仍然不支持高并发、高访问量的场景,就算是部署两台服务器,性能也只是提高了一                       点,如果是大量的并发请求,应用数据分离架构还是难以支持的。

                   2. 硬件成本增高,原来部署一台服务器,现在部署两台。

     二、 应用服务集群架构

    1. 简介

        加入了负载均衡技术,应用是以多个服务器的方式(集群)运行,通过负载均衡技术避免单一节点(服务器)负载过大,达到资源利用的最优解。

    2. 出现原因

        上述的架构仍然不满足海量的并发请求,通过 负载均衡 + 集群 的方式来处理高并发。

    3. 架构工作原理

        以电子商城为例,如下图所示:用户在访问服务器时,先通过负载均衡技术将请求发送给对应的服务器节点,负载均衡再根据分配策略将请求发送给合适的服务器,然后再去查询商品,数据库和应用之间还是以网络的方式进行通信,之后服务层把拿到的数据返回给用户(这里负载均衡有两种模式,一种是返回的流量经过负载均衡,一种是流量不经过负载均衡)

    4. 架构优缺点

        优点:1. 高可用:一个服务器节点挂了之后其他的还可以继续工作。

                   2. 高性能:因为和数据库通信时经过网络的,需要一定的时间成本,所以如果不是和访                                      问数据库相关的操作,性能是很高的,而且集群中计算节点很多,所以支持                                    高并发的请求。

                   3. 支持横向扩展:如果这个集群中的节点不够用了,可以继续增加服务器节点来保证上                                                述优点。

        缺点:1. 服务器是集群,但是数据库是单点,所以数据库的性能是有限的.

                   2. 硬件成本高。

                   3. 运维部署成本高,服务器节点增多,之后就需要快速部署,需要开发工具开发更快                          捷。

  • 相关阅读:
    [附源码]java毕业设计高校班主任班级管理系统
    SpringBoot接入GrayLog(分布式日志组件)
    【linux】普通用户创建删除口令管理等用户管理
    Redis 读写分离和哨兵机制
    基于Docker实现pgsql的热备
    【玩转腾讯混元大模型】怎么说?我用混元AI大模型开发了个IDEA插件
    JVM阶段(1)-运行时数据区
    首次做CMMI,如何选择适合的评估级别
    git如何拉去某个tag的代码
    虚拟内存管理
  • 原文地址:https://blog.csdn.net/weixin_64874291/article/details/134350920