Springcloud_01
zookeeper注册中心,dubbo远程注入
组件的作用
什么是微服务?
答:将大一统的项目拆分成每个耦合性强可以独立测试的独立模块,比如用户管理服务,用户鉴权服务等,拆分后每一个都对应自己的数据库.
Springcloud将一系列框架整合到一起,形成了一个一系列框架的有序集合,用Springboot简化了他们之间的开发和配置.
Springcloud和Springboot的版本要对应起来,要不会有想不到的bug
---------------------------------------------------------
Springcloud和springboot的区别(两者都能实现微服务):Springcloud是基于Springboot做开发的.
Springcloud和dubbo的区别:dubbo只实现了服务治理,Springcloud子项目则分别覆盖了微服务的众多部件,dubbo(RPC通信协议)效率略高于Springcloud(RESTful)(通信协议不同),dubbo性能好,Springcloud功能更加完全.
+++++++++++++++++++++++++++++
Springcloud 服务治理(注册中心)
Eureka:搭建Springboot项目时要注意导入Euraka的坐标 使用maven(后面导入Springboot) 创建项目后maven可能需要更改一下
1.搭建服务提供者(Provider)和消费者(Consumer)的模块(两个里面都需要引入Springboot的环境)
2.使用RestTemplate(用处:用于在java代码中实现远程调用)(1.定义restTemplate,2.注入bean,3.调用方法getForObject()完成远程调用
3.搭建Eureka Server服务(1.创建模块2.引入euraka-server相关依赖(在父工程的pom文件中引入Springcloud版本信息,再在euraka-server中引入坐标),3.完成Eureka Server 相关配置 4.启动该模块)
4.改造Provider和Consumer称为Eureka Client,改造的时候要在配置文件中导入Eureka的URL,两个都需要导入
5.Consumer服务通过Consumer Server 中抓取Provider地址完成远程调用
Eureka配置:
续约心跳:30s 判断时间90s 超过90s没发消息会被注册中心认为挂掉,注册中心会默认开启保护机制( 触发时机:期望续约值大于实际续约值 (n+1)(客户端数量)*2(一分钟默认发两次,30s/一次,修改后就是60/修改的时间)*0.85(这个是固定的)关闭时机 :期望续约值小于等于实际续约值)
会定期剔除失效服务,默认60s
服务消费者,会定时从注册中心拉取服务提供者地址,定时更新.默认30s,
Eureka高可用(集群):
1.准备两个Eureka Server注册中心
2.分别进行配置,相互注册,需要搭建更多的话在URL路径之间用","号分割(也可以使用蛇咬蛇尾的方式)
3.Eureka Client 分别注册到这两个Eureka Server中
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Consul:是一个软件,安装包是一个可执行文件,在命令行运行 .\consul agent -dev(模式) 访问端口:8500
Nacos:阿里开发的,解压缩后在bean中可以直接运行
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Ribbon负载均衡(搭建集群,其中一个服务挂了,调用另一个,根据负载均衡算法): 1.简化远程调用 2.负载均衡

浙公网安备 33010602011771号