学习目标:
1.什么是微服务
2.微服务之间是如何独立通讯的
3.springcloud和dubbo有哪些区别?
4.springboot和springCloud有哪些区别?
5.springBoot和SpringCloud,请你谈谈对他们的理解
6.什么是服务熔断?什么是服务降级
7.微服务优缺点?
8.你所知道的微服务技术有哪些?
9.eureka和zookeeper都可以提供服务注册与发现的功能,说下区别
微服务概念:
将单一应用划分为一组小的服务,每个服务运行在其独立的进程中。
服务之间采用轻量级的通信机制沟通(基于HTTP的RESTful API)dubbo 采用RPC沟通
SpringCloud =分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶。
微服务与微服务架构:
微服务:
强调的是服务的大小,他关注的是某一个点,是具体解决某一个问题/提供落地对应服务的一个服务应用。
微服务架构:
一种新的架构形式。由微服务构成。
微服务优缺点:
优点:
①每个服务足够内聚,足够小,代码容易理解,这样能聚焦一个指定的业务功能或业务需求。
②开发简单,开发效率提高,一个服务可能就是专一的只干一件事。
③能被小团队单独开发。
④微服务是松耦合的,具有功能意义的服务,无论是在开发阶段或部署阶段都是独立的
⑤能使用不同的语言开发
⑥易于和第三方集成,微服务允许容易且灵活的方式集成自动部署,通过持续集成功具,如Jenkins,Hudson,bamboo。
⑦微服务只是业务逻辑的代码,不会和HTML,CSS或其他界面组件混合
⑧每个微服务都有自己的存储你能力,可以有自己的数据库,也可有统一数据库
缺点:
- 发人员要处理分布式系统的复杂性
- 服务运维难度,随着服务的增加,运维压力增大
- 统部署依赖,服务间通信成本,性能监控。。。。。。
springCloud包含:
服务的注册与发现(Eureka)
服务消费者(rest+Ribbon)
服务消费者(Feign)
断路器(Hystrix)
断路器监控(Hystrix Dashboard)
路由网关(Zuul)
分布式配置中心(Spring Cloud Config)
消息总线(Spring Cloud Bus)
服务链路追踪(Spring Cloud Sleuth)
。。。。。