一、SpringCloud之微服务介绍

1、微服务

James Lewis & Martin Fowler 2014年3月25日写的《Microservices》:微服务是一种架构风格。

  • 一系列微小的服务共同组成
  • 跑在自己的进程里
  • 每个服务为独立的业务开发
  • 独立部署
  • 分布式管理

微服务特点:异构

  • 不同语言
  • 不同类型的数据库

2、其他常见架构形态

  • 单体架构

优点:容易测试、容易部署

缺点:开发效率低、稳定性不高、代码维护难、扩展性不够、部署不灵活

  • 基于Ajax的前后端分离

  • 分布式

旨在支持应用程序和服务的开发,可以利用物理架构由多个自治的处理元素,不共享主内存,但通过网络发送消息合作。

分布式和集群有什么区别:分布式是个工作方式,集群是个物理形态。一句话,就是:“分头做事”与“一堆人”的区别。

3、微服务架构的基础框架/组件

  • 服务注册发现:

客户端服务发现:B向注册中心注册,A通过注册中心拿到一堆B的地址,通过某种机制,从众多可用的B中挑出一个,然后通过IP地址找到B。

服务器端服务发现:B向注册中心注册,代理从众多可用的B里面挑选一个出来给A,然后A再根据IP地址去找B。

  • 服务网关(Service Gateway)

  • 后端通用服务(也称中间层服务Middle Tier Service)

后端在启动的时候会将地址信息注册到服务注册表里面。

  • 前端服务(也称边缘服务Edge Service)

前端服务通过查询注册表发现调用后端服务,作用:对后端服务做必要的聚合和裁剪后暴露给外部不同的设备。聚合:对多个API调用逻辑进行聚合,从而减少客户端的请求数(合二为一)。裁剪:刚好跟聚合相反,根据不同的需求,返回不同的术语。

 

4、微服务两大实现手段

 DubboSpring Cloud
服务注册中心ZookeeperSpring Cloud Netflix Eureka
服务调用方式RPCREST API
服务网关Spring Cloud Netflix Zuul
服务跟踪Spring Cloud Sleuth
断路器不完善Spring Cloud Netflix Hystrix
分布式配置Spring Cloud Config
消息总线Spring Cloud Bus
数据流Spring Cloud Stream
批量任务Spring Cloud Task

5、Spring Cloud

Spring Cloud官网

  • Spring Cloud是一个开发工具集,含了多个子项目

- 利用Spring Boot的开发便利

- 主要是基于对Netflix开源组件的进一步封装

  • Spring Cloud的服务调用方式

- REST

- Node.js的eureka-js-client

  • Spring Cloud 微服务架构图

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值