zoukankan      html  css  js  c++  java
  • 架构演进和分布式系统基础知识

    架构演进

    微服务是从单体应用发展而来,传统单体应用非常简单,只有用户、应用系统和数据库。

    这种架构非常简单,但也非常脆弱,只适合小型应用,随着系统越来越庞大,用户越来越多,这样的单体应用也就不适合了,分布式架构应运而生。

    分布式架构强化了系统的稳定性和安全性,但也使得系统变得难以维护。

    微服务继承了分布式架构的特点,也保留单体应用的优点,集合两者所长。

    单体应用优缺点:结构简单,但是开发速度慢、启动时间长、依赖庞大等等。

    微服务优缺点:易开发、理解和维护、独立的部署和启动等,但是分布式系统带来了分布式事务问题,需要管理多个服务导致服务治理会出现问题。

    • 网关:路由转发 + 过滤器
    • 服务注册发现:调用和被调用方的信息维护
    • 配置中心:管理配置,动态更新 application.properties
    • 链路追踪:分析调用链路耗时
    • 负载均衡器:分发负载
    • 熔断:保护自己和被调用方

    常用的微服务框架

    1)Dubbo

    ZooKeeper + Dubbo + Spring MVC/Spring Boot

    官方地址:http://dubbo.apache.org/#!/?lang=zh-cn

    配套:

    • 通信方式:RPC
    • 注册中心:ZooKeeper / Redis
    • 配置中心:Diamond

    2)Spring Cloud

    全家桶+轻松嵌入第三方组件(Netflix 奈飞)

    官网:http://projects.spring.io/spring-cloud/

    配套

    • 通信方式:HTTP Restful
    • 注册中心:Eruka/Consul
    • 配置中心:Config
    • 断路器:Hystrix
    • 网关:Zuul
    • 分布式追踪系统:Sleuth+Zipkin

    学习资料:https://blog.csdn.net/zhangweiwei2020/article/details/78646252

    3)Spring Alibaba Cloud

    全家桶+阿里生态多个组件组合+SpringCloud支持

    官网:https://spring.io/projects/spring-cloud-alibaba

    配套

    • 通信方式:HTTP Restful
    • 注册中心:nacos
    • 配置中心:nacos
    • 断路器:sentinel
    • 网关:gateway
    • 分布式追踪系统:sleuth+zipkin
  • 相关阅读:
    Linux 相关scsi命令
    存储
    Multipath多路径冗余全解析
    Oracle中alter system命令参数之scope
    scipy安装失败
    font
    查看端口占用
    oracle参数优化
    组播
    sql给整数补零
  • 原文地址:https://www.cnblogs.com/jwen1994/p/11525057.html
Copyright © 2011-2022 走看看