《Spring Cloud微服务实战》——基础知识

版权声明:本文为博主anzy原创文章,转载请注明地址 https://blog.csdn.net/qq_24549805/article/details/80213684

一、什么是微服务架构:

    微服务是系统架构上的一种设计风格,它的主旨是讲一个原本独立的系统拆分成多个小型服务,服务之间通过基于HTTP的RESTful API进行通信协作。由于轻量级的通信协议做基础,所以这些微服务可以使用不同的语言编写。

二、与单体系统的区别:

    传统企业框架中,针对一个复杂的业务需求通常使用对象和业务类构建一个项目,项目中通常分为三大部分:数据库、服务端处理、前端展示。但是随着业务量等因素的影响系统会变得越来越臃肿,难以维护,修改一个地方会关联许多地方。维护成本越来越大。

    为了解决系统庞大臃肿的问题,产生了微服务架构。把一个系统的功能拆分成多个服务,这些服务独立部署和扩展。因为是独立部署因此更容易发现系统的瓶颈位置,做出更好的系统评估等。

三、如何实施微服务

    微服务拆分后的问题:1、运维的新挑战 2、接口的一致性 3、分布式的复杂性 等

    微服务的九大特性:

    1、服务组件化

    2、按业务组织团队

    3、做“产品”的态度

    4、智能端点与哑管道

    5、去中心化治理

    6、去中心化管理数据

    7、基础设施自动化

    8、容错设计

    9、演进式设计

四、Spring Cloud简介

    Spring Cloud是基于Spring Boot实现的微服务架构开发工具。他为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供一种简单的配置方式。

    Spring Could包含多个子项目如下:

    1、Spring Cloud Config:配置管理工具,支持使用Git存储配置信息,可以使用他实现应用配置的外部存储,并支持客户端配置信息刷新、加密解密配置内容等。

    2、Spring Cloud Netfix:核心组件,支持多个Netflix OSS开源套件进行整合。

        Eureka:服务治理组件,包含服务注册中心、服务注册与发现机制的实现。

        Hystrix:容错管理组件,实现断路器模式,帮助服务依赖中出现的延迟和为故障提供强大的容错能力。

        Ribbon:客户端负载均衡的服务调用组件。

        ...

    3、Spring Cloud Bus:事件、消息总线,用于传播集群中的状态变化或时间,以及触发后续处理,比如用来动态刷新配置。

    4、Spring Cloud Cluster:针对Zookeeper,Redis、Hazelcast、Consul的选举算法和通用状态模式的实现。

    。。。




猜你喜欢

转载自blog.csdn.net/qq_24549805/article/details/80213684
今日推荐