SpringCloud微服务的基本概念

一、什么是微服务

提倡将单一应用程序划分成一组小的服务,每个服务运行在其独立的进程中,服务之间互相协调,互相配合,为用户提供最终价值。服务之间采用轻量级的通信机制与互相沟通(一般基于HTTP的RESTFULL   API),服务独立的部署,独立的发布。其中Dubbo是基于RPC远程过程调用。

微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底的去耦合,每一个微服务提供单个业务功能的服务,一个服务就只做一件事,从技术的角度看就是一种小而独立的处理过程,类似进程的概念,能够自行单独启动或销毁,拥有自己独立的数据库。

让特定专业的模块来做特定专业的事情。

二、微服务与微服务架构

微服务:强调的是一个一个的个体,每一个个体完成各自具体的任务或者功能。例如去医院看病的一个科室一样:挂号——具体的科室——缴费——取药——离开。每一个步骤都是独立的个体功能,互不相扰,又相互联系。

微服务架构:强调的是一个整体,它是由一个个不同功能的微服务组合而成,用某种方式将其串联起来(HTTP  API)。例如中国是一个微服务架构,那么24个省份就是一个个微服务,它们都通过汉语,普通话进行紧密的串联起来,对外形成一个庞大的国家(架构)。

微服务相对微服务架构是一个微观的概念,反之微服务架构相对于微服务就是一个宏观的概念。

三、微服务的优缺点

1.优点:

a.每个服务足够内聚,足够小,代码容易理解,能聚焦一个指定的业务功能或业务需求。

b.特定的服务专一的做特定的事情,开发简单,效率提高

c.微服务是松耦合的,独立开发,独立部署,独立上线

d.能够使用不同的语言开发。

e.易于和第三方集成。

f.微服务只是业务逻辑代码,不会和html,css或其他界面混合。

g.每个微服务既可以有自己的数据库,也可以有统一的数据库

and so on。。。

2.缺点:

a.开发人员要处理分布式系统的复杂性。

b.运维难度和压力的增大。

c.系统部署依赖。

d.服务间的通信成本。

e.数据的一致性。

f.系统集成测试。

g.性能监控的难度和压力的增加。。。

四.微服务相关技术栈

服务开发——————————————SpringBoot,Spring,SpringMVC

服务配置与管理———————————Netflix公司的Archaius,阿里的Diamond等

服务注册与发现———————————Eureka,Consul,zookeeper等

服务调用——————————————Rest,RPC,gRPC

服务熔断器—————————————Hystrix,Envoy等

负载均衡——————————————Ribbon,Nginx

服务接口调用————————————Feign等

消息队列——————————————Kafka,RabbitMQ,ActiveMQ等

服务配置中心管理——————————SpringCloud Config,Chef等

。。。大约有二十几种的技术栈。

五、SpringCloud是什么?

根据官网解释:SpringCloud是基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务官网,负载均衡,熔断器等组件

SpringCloud通过springBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出来一套简单易懂,易部署和易维护的分布式系统开发工具包。即微服务全家桶,是分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体

六、SpringCloud与SpringBoot的关系

springboot专注于快速便捷的开发单个个体微服务。

springcloud是关注全局的微服务协调整理治理框架,将一个个springboot单体微服务整合管理起来。为各个微服务之间提供配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等集成服务

总结一句话:SpringBoot可以离开SpringCloud独立使用,开发项目。但SpringCloud必定依赖于SpringBoot。即Springboot专注于快捷,方便的开发单个微服务个体,SpringCloud关注全局的服务治理框架。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值