当前位置: 首页 > news >正文

纯静态企业网站南京服务好建设网站哪家好

纯静态企业网站,南京服务好建设网站哪家好,青岛提供网站建设哪家便宜,信息系统项目管理高级【Spring Cloud Alibaba】前置知识1. 微服务介绍1.1 系统架构的演变1.1.1 单体应用架构1.1.2 垂直应用架构1.1.3 分布式架构1.1.3.1 SOA架构1.1.4 微服务架构2. SpringCloud Alibaba2.1 主要功能:2.2 主要组件2.3 版本说明2.4 Spring Cloud Alibaba与Netflix等对比1…

【Spring Cloud Alibaba】前置知识

  • 1. 微服务介绍
    • 1.1 系统架构的演变
      • 1.1.1 单体应用架构
      • 1.1.2 垂直应用架构
      • 1.1.3 分布式架构
        • 1.1.3.1 SOA架构
      • 1.1.4 微服务架构
  • 2. SpringCloud Alibaba
    • 2.1 主要功能:
    • 2.2 主要组件
    • 2.3 版本说明
    • 2.4 Spring Cloud Alibaba与Netflix等对比

1. 微服务介绍

1.1 系统架构的演变

随着互联网的发展,网站应用的规模也在不断的扩大,进而导致系统架构也在不断的进行变化。从互联网早期到现在,系统架构大致经过下面几个过程:单体应用架构->垂直应用架构->分布式架构->SOA架构->微服务架构,当然还有现在的Service Mesh(服务网格化)。

1.1.1 单体应用架构

在互联网发展初期,网站应用的流量普遍较小,通常采用单一应用架构。这种架构将全部功能模块集中部署,能有效降低开发、部署和维护成本。

以电商系统为例,该系统可能包含用户管理、商品管理、订单管理和物流等模块。在传统架构下,这些功能会被整合为单个Web项目,并统一部署到Tomcat服务器上运行。

优点:

  • 项目结构简单,小型项目,开发成本低
  • 项目部署在一个节点上,维护方便

缺点:

  • 全部功能集成在一个工程上,对大型项目来讲不易开发和维护
  • 项目模块之间紧密耦合,单点容错率低
  • 无法针对不同模块进行针对性优化和水平扩展

1.1.2 垂直应用架构

在这里插入图片描述
概念

  • 按照业务线/功能模块,把系统拆分为多个 独立应用。

  • 例如:

    • 用户系统(user service)
    • 订单系统(order service)
    • 支付系统(payment service)
  • 各自有 独立的数据库和应用,之间通过接口交互。

✅ 优点:

  • 降低单个应用的复杂度,团队可以并行开发。
  • 部署隔离:更新某个模块不会影响整个系统。
  • 可以选择不同技术栈(支付模块用 Java,推荐模块用 Python)。
  • 对外可以按业务线提供不同入口(PC 端、App 端、管理后台)。

❌ 缺点:

  • 系统之间接口调用增加,接口维护复杂。
  • 数据不再集中,可能存在 数据冗余 & 一致性问题。
  • 认证、权限、日志、监控等需要在各应用间统一。

1.1.3 分布式架构

概念

  • 在垂直应用的基础上,进一步把业务系统拆解成更小的 服务单元(Service)。
  • 通过 分布式技术(RPC、消息队列、负载均衡、服务注册发现等)来管理和调用。
  • 演进方向:SOA → 微服务(Microservices) → 云原生(Kubernetes、Service Mesh)。

✅ 优点:

  • 高扩展性:可以对某个服务做水平扩容(例如秒杀时只扩容订单服务)。
  • 高可用:通过服务治理、容错机制(熔断、限流、降级)保证稳定性。
  • 灵活性:服务独立部署、迭代,团队可用不同语言实现。
  • 可支撑大规模并发与复杂业务场景。

❌ 缺点:

  • 架构复杂度大大提升。
  • 服务间调用涉及 网络通信开销、延迟、容错。
  • 分布式事务、一致性问题难处理。
  • 需要配套的 服务治理体系(如注册中心、配置中心、监控报警、链路追踪)。
1.1.3.1 SOA架构

SOA(Service-Oriented Architecture,面向服务的架构)其实就是 分布式架构早期的一种实现模式,它是从“垂直应用”往“分布式架构”过渡的重要阶段。

SOA 是一种架构思想,它把系统功能抽象为 服务(Service),不同服务之间通过 统一的服务接口协议(通常是基于网络的调用,如WebService、SOAP、ESB)进行通信和组合。

✅ 优点

  1. 解耦:通过服务接口屏蔽内部实现,不同系统只关心服务定义。

  2. 复用:一个服务可以被多个业务系统调用(例如统一的支付服务)。

  3. 灵活组合:多个服务可以通过编排组合成新的业务流程。

  4. 跨平台:不同服务可以用不同技术栈实现(Java、.NET、Python 都行)。

❌ 缺点

  1. 实现复杂:需要引入 ESB(Enterprise Service Bus)做消息路由、转换、协议适配。

  2. 性能问题:早期 SOA 大多基于 SOAP/XML,通信开销大,性能较低。

  3. 中心化风险:ESB 过度集中,容易成为瓶颈或单点故障。

  4. 运维成本高:需要大量治理(安全、事务、监控)。


SOA 和微服务(Microservices)的区别

对比维度SOA微服务
通信方式传统使用 ESB + SOAP/XML轻量化,RESTful/HTTP、gRPC、消息队列
服务粒度相对粗,服务更大相对细,每个服务只做一件事
服务编排依赖 ESB,中心化编排去中心化,服务自治,通常使用 API Gateway + 注册中心
技术复杂度高,需要重量级中间件相对轻,依赖云原生生态(K8s、Spring Cloud、Dubbo)
弹性扩展不灵活,容易受限于 ESB灵活,支持容器化、自动扩缩容

👉 可以说 微服务是对 SOA 的轻量化和进化,解决了 SOA 中心化、臃肿的问题。

举个例子

假设一个电商系统:

  • SOA 模式下

    • 有 支付服务、订单服务、库存服务
    • 所有应用通过 ESB 调用这些服务
    • ESB 会处理协议转换、消息路由、服务编排
  • 微服务模式下

    • 每个服务独立运行
    • 通过 注册中心(Eureka/Nacos) + API Gateway 直接通信
    • 不需要依赖一个中心化的 ESB

1.1.4 微服务架构

微服务架构是一种 架构风格,它将复杂应用拆分成一组 小而独立的服务。
每个服务围绕 单一业务能力 构建(如用户服务、订单服务、支付服务),独立开发、部署和运维,通过 轻量级通信机制(HTTP REST、gRPC、消息队列等) 进行交互。

微服务架构的核心特征
1.服务小而专一

  • 每个服务只负责一个明确的业务功能。
  • 例如:订单服务只负责订单的创建、查询,不会处理用户登录。

2.独立部署

  • 服务是独立的进程,可以单独部署,不影响其他服务。
  • 便于快速迭代、灰度发布。

3.去中心化治理

  • 没有像 SOA 的 ESB 单点瓶颈。

  • 服务之间直接通过注册中心(Eureka/Nacos/Consul)发现和通信。

4.轻量通信

  • 常用 RESTful API、gRPC、消息队列。
  • 弃用了 SOAP/XML 这种重量级通信协议。

5.分布式特性

  • 支持服务弹性伸缩(秒杀时扩容订单服务)。
  • 容错机制:熔断、限流、降级(Hystrix、Sentinel)。
  • 配置中心、日志监控、链路追踪等支撑系统。

优缺点
✅ 优点

  1. 灵活扩展:不同服务可独立水平扩容。

  2. 高可用:某个服务挂了,不会拖垮整个系统。

  3. 技术多样性:每个服务可用最适合的技术栈(Java、Go、Python…)。

  4. 快速迭代:不同团队负责不同服务,能并行开发。

❌ 缺点

  1. 架构复杂度高:涉及服务治理、分布式事务、网络调用问题。

  2. 运维成本高:服务数量多,部署、监控、调试更复杂。

  3. 数据一致性难:一个业务可能涉及多个服务,需要分布式事务或最终一致性。

  4. 性能开销:服务之间是远程调用(RPC/HTTP),比单体的本地调用慢。


微服务 vs 单体应用 vs SOA

特点单体应用SOA微服务
架构一个整体应用服务化,但依赖 ESB小服务 + 去中心化治理
部署整体部署部署多个服务,但耦合 ESB每个服务独立部署
通信方法调用(本地)SOAP/XML,依赖 ESBREST/gRPC/消息队列
扩展性不灵活一定灵活,但中心化瓶颈高度灵活,天然支持云原生
技术栈单一多样,但受限于 ESB完全多样,自由度更高

2. SpringCloud Alibaba

官网:
https://sca.aliyun.com/
https://github.com/alibaba/spring-cloud-alibaba


2.1 主要功能:

  • 服务限流降级:默认支持 WebServlet、WebFlux、OpenFeign、RestTemplate、Spring Cloud Gateway、Dubbo 和 RocketMQ 限流降级功能的接入,可以在运行时通过控制台实时修改限流降级规则,还支持查看限流降级 Metrics 监控。
  • 服务注册与发现:适配 Spring Cloud 服务注册与发现标准,默认集成对应 Spring Cloud 版本所支持的负载均衡组件的适配。
  • 分布式配置管理:支持分布式系统中的外部化配置,配置更改时自动刷新。
  • 消息驱动能力:基于 Spring Cloud Stream 为微服务应用构建消息驱动能力。
  • 分布式事务:使用 @GlobalTransactional 注解, 高效并且对业务零侵入地解决分布式事务问题。
  • 阿里云对象存储:阿里云提供的海量、安全、低成本、高可靠的云存储服务。支持在任何应用、任何时间、任何地点存储和访问任意类型的数据。
  • 分布式任务调度:提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。同时提供分布式的任务执行模型,如网格任务。网格任务支持海量子任务均匀分配到所有 Worker(schedulerx-client)上执行。

2.2 主要组件

  • Sentinel:把流量作为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。
  • Nacos:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
  • RocketMQ:一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。
  • Seata:阿里巴巴开源产品,一个易于使用的高性能微服务分布式事务解决方案。
  • Alibaba Cloud OSS: 阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。
  • Alibaba Cloud SchedulerX: 阿里中间件团队开发的一款分布式任务调度产品,提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。
  • Alibaba Cloud SMS: 覆盖全球的短信服务,友好、高效、智能的互联化通讯能力,帮助企业迅速搭建客户触达通道。

2.3 版本说明

官方说明 https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明

2.4 Spring Cloud Alibaba与Netflix等对比

在这里插入图片描述

http://www.dtcms.com/a/397820.html

相关文章:

  • 有什么可以在线做数学题的网站龙岗网站制作公司一般多少钱
  • 自己做的影视会员网站违法么用html做网站的背景图怎么弄
  • 商城站在哪个地方wordpress上传大附件
  • 做网站线上线下价格混乱企业网站备案网地址
  • 太原网站搜索排名玉林做网站优化推广
  • 长沙建站模板平台网贷代理推广
  • 免费网站模网游网站开发
  • 江苏建设监理协会官方网站logo设计 效果图
  • 百色高端网站建设西昌手机网
  • 南京建设部执业注册中心网站id注册网站
  • 网站建设的岗位是什么岗位wordpress主题怎么选
  • 佛山外贸网站阜城网站建设价格
  • 制作网站多少钱一个网站开发word文档
  • 网站建设与设计实习报告如何在网站中做公示信息
  • 建设网站要做的工作总结企业网站系统官网
  • 网站建设宣传软文范例私密浏览器免费观看
  • 简约大气网站首页网站首页seo关键词布局
  • 青岛经纬建设工程有限公司网站网站优化排名方法
  • 昆明网站开发推广Wordpress主题 修改 价钱
  • 网站不用了 怎么关闭吗厅网站建设项目背景
  • 建设银行网站修改企业商城网站建设价格
  • html5做个网站多少钱制作网站用什么软件
  • 不错的建设工程人员查询百度搜索推广优化师工作内容
  • 网站运行环境建设方案阿里云个人网站建设方案书
  • 网站设计高端谷歌seo优化
  • 中国建设报社网站优化优化
  • 制作网站的图片素材去wordpress化
  • 网站开发费用无形资产沧州市网络公司
  • 证书查询甘肃建设网站网站建设 福州
  • 网站用表格做的吗销售渠道建设网站