目录
5、服务注册和发现是什么意思?Spring Cloud 如何实现?
5、pom.xml引依赖,注意idea右下角可能import下
7、在ceam-eureka下的pom.xml引入子模块Eureka依赖
8、在子模块下创建SpringCloud注册中心启动类EurekaApp
一、前言
1、什么是微服务
微服务(microservice) 一词最早由Martin Fowler与James Lewis于2014年共同提出来的,它是一种新的软件架构风格,就是把一个大型应用程序分割成可以独立部署的小型服务,每个服务之间都是松耦合的,通过RPC或者是Rest协议来进行通信,可以按照业务领域来划分成独立的单元,比如一个电商系统可以分割成会员、订单、商品、积分、优惠券等不同的小型服务,有自动化运维、容错、快速演进的特点,它能够解决传统单体架构系统的痛点,同时也能满足越来越复杂的业务需求。
2、微服务的优点
- 高可用:与传统的单机系统比,它的可用性高。举个例子说明下:单机系统如果挂了,那么整个系统的服务就不能提供服务了,这给使用它的商家带来很大的经济损失。而微服务不同,某个服务挂了,可能并不会影响其它微服务继续对外提供服务。而且新开发的功能点或更改的功能点集中在一个服务上面,即使部署上线出了问题,也不会影响其它服务的业务。
- **松耦合:**无论是在开发阶段或部署阶段都是独立的,富有单一职责原则之称,从而保障高可用。
- **模块化:**它将一个整体应用程序分解成一系列服务,每个模块都有它相应的职责,提高了维护与扩展性。在分工方面也有一定好处,可由小团队单独开发。
3、什么是SpringCloud
Spring cloud 很明显是Spring家族的又一神创产物,它是用于开发微服务应用的一系列组件的集合。Spring cloud 应用程序启动器是基于 Spring Boot 的 Spring 集成应用程序, 提供与外部系统的集成。Spring cloud 与Spring Boot不是走我行我素之风,而是相辅相成的关系。Spring cloud Task, 一个生命周期短暂的微服务框架, 用于快速构建执行有限数据处理的应用程序。
4、使用SpringCloud的优点
使用 Spring Boot 开发分布式微服务时, 我们面临以下问题:
1、与分布式系统相关的复杂性:这种开销包括网络问题、延迟开销、带宽问题、安全问题。
2、服务发现**:**服务发现工具管理群集中的流程和服务如何查找和互相交谈。它涉及一个服务目录, 在该目录中注册服务, 然后能够查找并连接到该目录中的服务。
3、**冗余:**分布式系统中的冗余问题。
4、负载平衡