天天看点

SpringCloud - 关于微服务

目录

  • ​​微服务​​
  • ​​微服务的定义​​
  • ​​微服务的特性​​
  • ​​微服务的优点​​
  • ​​微服务的缺点​​
  • ​​微服务的适用场景​​
  • ​​不适合微服务的场景​​
  • ​​Spring Cloud​​

微服务

微服务的定义

微服务的完整定义来自​

​Martin Fowler​

​​的文章《 ​​MicroServices​​​》,作者是​

​James Lewis​

​​与​

​Martin Fowler​

​,他们对微服务的定义如下所示:

SpringCloud - 关于微服务

译为:

微服务架构风格是一种将一个单一应用程序开发为​

​一组小型服务​

​​的方法,每个服务运行在​

​自己的进程​

​​中,服务间的通信采用​

​轻量级通信机制​

​​(通常用HTTP 资源 API)。 这些服务​

​围绕业务能力构建​

​​并且可以通过​

​全自动化部署机制​

​​独立部署。 这些服务共用一个​

​最小型的集中式的管理​

​​,服务可用​

​不同的编程语言​

​​编写并使用​

​不同的数据存储技术​

​。

简单说来:

微服务是一种思想,符合这种思想的系统架构可以说是微服务,其将业务拆解成一个个小形态的服务,每个微服务仅关注完成一件任务。

微服务的特性

  • 每个微服务可独立运行在自己的进程中
  • 一系列独立运行的微服务共同构建起整个系统
  • 每个服务为独立的业务开发,一个微服务值关注某个特定的功能
  • 可使用不同的语言和数据存储技术
  • 微服务之间通过轻量的通信机制进行通信,如​

    ​REST API​

  • 全自动部署机制

微服务的优点

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

微服务的缺点

  • 运维要求高
  • 分布式固有的复杂性
  • 重复劳动

微服务的适用场景

  • 大型、复杂的项目
  • 有快速迭代的需求
  • 访问压力大

不适合微服务的场景

  • 业务稳定
  • 迭代周期长

Spring Cloud

​Spring Cloud​

​是一个完整的微服务架构,提供了一系列开发微服务的工具

微服务工具概览:

SpringCloud - 关于微服务

- End -﹀

白嫖有风险

点赞加收藏

SpringCloud - 关于微服务

以上为本篇文章的主要内容,希望大家多提意见,如果喜欢记得点个推荐哦

作者:Maggieq8324