zoukankan      html  css  js  c++  java
  • 【Spring123】Spring Cloud 学习积累

    入门阅读:https://martinfowler.com/articles/microservices.html

    单体应用与微服务架构的优缺点:

    单体:

    • 复杂性高:
    • 技术债务:
    • 部署频率低:
    • 可靠性差:
    • 扩展能力受限:
    • 阻碍技术创新:

    微服务:

    :)

    • 易于开发和维护:
    • 单个微服务启动较快:
    • 局部修改容易部署:
    • 技术栈不受限:
    • 按需伸缩:

    :(

    • 运维要求较高:
    • 分布式固有的复杂性:
    • 接口调整成本高:
    • 重复劳动:

    微服务设计原则:

    • 单一职责:SOLID原则之一,更优雅更敏捷的交付。
    • 服务自治:独立的业务能力、依赖和运行环境,高度解耦。
    • 轻量级通信:跨语言跨平台,如REST协议。
    • 微服务粒度:设计确定边界,相对独立又保持松耦合。

    微服务技术选型——两个维度:

    • 开发框架:如SpringCloud
    • 运行平台:如AWS, Docker

    使用Spring Initializr快速创建SpringBoot项目:https://start.spring.io/

    项目依赖:Spring Boot, Srping Cloud等

    Spring Boot Actuator提供监控端点endpoint

    微服务注册与发现:可分为服务器端和客户端,类似:

    • 服务注册表:启动时注册,提供查询API和管理API
    • 服务注册与发现:通信机制(如心跳)
    • 服务检查:可注销

    举例Eureka:

    举例ZooKeeper:

  • 相关阅读:
    Java中Collection和Collections的区别(转载)
    equals和==的区别
    【转载】String、StringBuffer与StringBuilder之间区别
    Mybatis实现
    springMVC---文件上传
    java---Map接口实现类
    java---迭代器(Iterator)
    java---泛型
    java---StringBuilder类的用法(转载)
    c#开源项目收集
  • 原文地址:https://www.cnblogs.com/cathygx/p/11135252.html
Copyright © 2011-2022 走看看