微服务首谈

作者: FLINGH | 来源:发表于2020-01-01 11:10 被阅读0次

    微服务简介

    首先来谈一下什么是微服务? 微服务近几年如此过火,到底是什么优势吸引了无数开发人员热衷于微服务架构.微服务(Microservices)即是一种系统架构风格,将原来的单体应用架构拆分为若干个相互独立的小型服务,每个服务可以独立运行,服务与服务之间通过基于HTTP的Restful API完成通信.被拆分的每个服务完成某一项的业务功能,或是一些耦合度比较高的业务功能,每个服务都有自身的数据存储,业务开发,测试以及部署方案.可以使用不同的语言进行各个服务的开发.

    微服务架构特性

    • 服务组件化
    • 按照业务组织团队
    • 做"产品"的态度
    • 智能端点与哑管道
    • 去中心化治理
    • 去中心化管理数据基
    • 础设施自动化
    • 容错设计
    • 演进式设计
    • 微服务的选择
      近几年微服务几乎被绝大多数开发人员所谈及,也有无数的架构先驱在实际项目中应用微服务架构理念,为微服务架构的发展,实践做出了不可忽视的贡献,尤以互联网大公司共享最为突出,如国内的阿里巴巴更是走在前列.如下有诸多:
      服务治理: 阿里巴巴开源的Dubbo(已是Apache旗下顶级项目),Netflix的Eureka和Apache的Consul等.
      服务追踪:SpringCloud的Sleuth,Twitter的Zipkin
      分布式配置管理:Netflix的Archaius,SpringCloud的Config,淘宝的Diamond等.
      ......
      实施微服务架构的方案有很多,但是对于不同的公司和组织加之众多的开源框架,可以说,很难找到两个完全一致的架构方案.面对如此多的解决方案,对于新手来说,选择何种解决方案,无疑是一个棘手的问题,如果对每一种进行尝试,分析,势必耗时耗力,并不是一个明智的选择.
      而SpringCloud的出现,无疑是广大开发人员的一大福音,其初衷并非是解决微服务架构中的某一个问题,而是一个解决微服务架构实施的综合性解决方案.其整合了许多被实践证明过的框架作为实施方案的基础部件,并在这个基础上创建了一批优秀的边缘组件,为开发人员提供了极大的便利性.下面是SpringCloud简介
      SpringCloud简介
      SpringCloud是一个基于SpringBoot实现的微服务架构开发利器.为实现微服务架构中涉及到的配置管理,服务治理,断路器,智能路由,控制总线,分布式会话,集群状态管理等提供了一种简单的开发方式.

    SpringCloud包含众多子项目,例如有:
    Spring Cloud Config:配置管理工具,支持使用Git存储配置内容.
    Spring Cloud Netflix:核心组件,对多个Netflix OSS开源套件进行整合
    Eureka: 服务治理组件,包含服务注册中心,服务注册与发现机制的实现
    Hystrix: 容错管理组件,实现断路器模式,帮助服务依赖中出现的延迟和为故障提供强大的容错能力.
    Ribbon: 客户端负载均衡的服务调用组件.
    Feign: 基于Ribbon和Hystrix的声明式服务调用组件
    Zuul:网关组件,提供智能路由,访问过滤等功能.
    Archaius: 外部化配置组件.
    Spring Cloud Bus:事件,消息总线,用于传播集群中的状态变化或事件.
    Spring Cloud Cluster:针对Zookeeper,Redis,Consul的选举算法和通用状态模式的实现
    Spring Cloud Consul:服务发现与配置管理工具.
    Spring Cloud Stream:通过Redis,Rabbit或者Kafka实现的消费微服务,可通过简单的声明式模型来发送和接收消息.
    Spring Cloud Security:安全工具包,提供在Zuul代理中对OAuth2客户端请求的中继器
    Spring Cloud Zookeeper:基于Zookeeper的服务发现与配置管理组件
    Spring Cloud Starters:Spring Cloud的基础组件,基于Spring Boot风格项目的基础依赖模块
    Spring Cloud CLI:在Groovy中快速创建Spring Cloud应用的Spring Cloud CLI插件.

    文章如有错误之处,敬请各位高抬贵手指正.顺带点个关注多多支持,谢谢!!!

    相关文章

      网友评论

        本文标题:微服务首谈

        本文链接:https://www.haomeiwen.com/subject/enmwoctx.html