SpringCloud-微服务架构

前言

在讲springCloud以前讲讲为何要有springCloud,从学习中知道springCloud的兴起是由于Dubbo社区五年没有更新,在计算机这个行业里面五年没有进步真的太恐怖了,因此springCloud火热。虽然如今Dubbo已经开始活跃,可是springCloud毫不会被取代,而是蒸蒸日上,这时候我相信你和同样,确定想知道缘由。web

内容

1.选择框架的依旧的是什么?spring

  • 总体的解决方案和框架的成熟度
  • 社区的热度
  • 可维护性
  • 学习曲线

2.流行的微服务框架有哪些?数据库

  • 阿里的dubbo/HSF
  • 京东的jsf
  • 新浪微博的motan
  • 当当网的DubboX

3.各个服务框架的比较(表格展示)api

功能点 netflix/SpringCloud Motan Grpc Thrift Dubbo/Dubbox
功能定位 完整的微服务框架 rpc框架,整合了zk和consul,实现了集群环境的基本服务注册于发现 rpc框架 rpc框架 服务框架
支持Rest 是,Ribbon支持多种可插拔的序列换选择
支持rpc
支持多语言
负载均衡 是(服务端zuul+客户端的ribbon)zuul-服务动态路由,云端负载均衡,eureka(针对中间层服务) 是(客户端) 是(客户端)
配置服务 Netflix Spring cloudConfig server集中配置 是(zookeeper提供)
服务调用链监控 是(zuul)zuul提供边缘服务,api网关
高可用、容错 是(服务端htrix+客户端ribbon) 是(客户端) 是(客户端)
典型应用案例 Netflix Sina Google Facebook
社区活跃程度 通常 通常 通常
学习难度 中等
文档丰富度 通常 通常 通常
其余 Spring Cloud Bus为咱们的应用程序带来更多的管理端点 支持降级 Netflix内部在开发集成grpc IDL定义 实践的公司比较多

4.springCloud是微服务的架构,那什么是微服务?
微服务:强调服务的大小 ,关注某一个点,是具体解决某一个问题或提供对应服务的一个服务应用。
什么是微服务架构?
微服务架构没有统一的,标准的定义。微服务架构师一种架构模式或是一种架构风格,它提倡将单一应用程序分红一组小的服务,每个服务运行在独立的进行中,服务之间项目协调,相互配合,为用户提供最终价值。服务之间采用了轻量级的通讯机制互相沟通。每一个服务都围绕着具体业务进行构建,而且可以被独立部署到生产环境、类生产环境等。另外,应该尽可能避免统一的,集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言,工具对其进行构建,能够有一个很是轻量级的集中式管理协调这些服务,可使用不一样的语言来编写服务,也可使用不一样的数据库存储(config)
什么是微服务化?
微服务化的核心是传统的一战式应用。架构