服务治理 Spring Cloud Eureka
来源:互联网 发布:南斯拉夫知乎 编辑:程序博客网 时间:2024/06/05 14:57
1.架构图
2.构建服务注册中心(单点)
1.添加依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
2.配置
eureka.environment=beta 指定eureka所在的环境
3.启动
@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
}
访问http://localhost:1112
2.构建服务注册中心(高可用)
EurekaServer的高可用实际上就是将自己作为服务向其他服务注册中心注册自己,这样就可以形成组互相注册的
服务注册中心,以实现服务清单的互相同步,达到高可用的效果。
配置如下
服务注册中心1
server.port=1111
spring.application.name=eureka-server
eureka.client.service-url.defaultZone=http://localhost:1112/eureka/(如果有多个则用逗号隔开)
服务注册中心2
server.port=1112
spring.application.name=eureka-server
eureka.client.service-url.defaultZone=http://localhost:1111/eureka/
3.注册服务提供者
1.添加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
2. 配置
server.port=9527
spring.application.name=mem-favorite
#只提供服务,不消费服务,则不需要拉取服务中心信息
eureka.client.fetch-registry=false
#每隔多久向服务注册中心续约默认30秒
eureka.instance.lease-renewal-interval-in-seconds=30
#最后续约时间离现在超过多少秒,表示服务失效默认90秒
eureka.instance.lease-expiration-duration-in-seconds=90
eureka.client.service-url.defaultZone=http://localhost:1111/eureka/,http://localhost:1112/eureka/
3.启动
@SpringBootApplication
@EnableEurekaClient
public class FavoriteBootApplication {
public static void main(String[] args) {
SpringApplication.run(FavoriteBootApplication.class, args);
}
}
4.服务发现与消费
1.添加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
</dependency>
2. 配置
server.port=8088
spring.application.name=mem-web
eureka.client.service-url.defaultZone=http://localhost:1111/eureka/,http://localhost:1112/eureka/
3.启动
@SpringBootApplication
@EnableEurekaClient
public class MemWebBootApplication {
@Bean
@Qualifier("loadBalancedRestTemplate")
@LoadBalanced //开启客户端负载均衡
public RestTemplate loadBalancedRestTemplate() {
return new RestTemplate();
}
public static void main(String[] args) {
SpringApplication.run(MemWebBootApplication.class, args);
}
}
4.通过服务名调用服务
String response= restTemplate.getForObject("http://mem-favorite/Favorite/rest/v1/xxxxx",String.class);
5.配置总结
1.服务注册中心
eureka.server.eviction-interval-timer-in-ms=1000 每隔多少毫秒去检测超时没有续约的服务,并剔除默
认90秒。
eureka.server.enable-self-preservation= true运行期间统计心跳失败的比例在15分钟之内低于80%则将
当前的实例注册信息保护起来,让这些实例不会过期。默认是true
2.服务提供者
服务注册
eureka.client.register-with-eureka=true注册到服务中心默认true
服务续约
eureka.instance.lease-renewal-interval-in-seconds=30每隔多少秒请求服务中心进行续约默认30秒
eureka.instance.lease-expiration-duration-in-seconds=90服务过期时间默认90秒
3.服务消费者
获取服务
eureka.client.fetch-registry=true默认true
eureka.client.registry-fetch-interval-seconds=30每隔多少秒请求服务中心的服务列表
- 服务治理 Spring Cloud Eureka
- Spring Cloud 入门教程(一):服务治理(Eureka)
- Spring Cloud Eureka 服务治理(一)
- spring cloud Eureka 1 (服务治理)
- spring-cloud中eureka进行服务治理
- Spring Cloud初探——服务治理Spring Cloud Eureka
- spring cloud 服务自治理 Eureka(一)
- Spring Cloud 服务治理
- Spring Cloud学习笔记1——服务治理(Eureka)
- spring cloud:eureka服务发现
- Spring Cloud Eureka--服务发现
- Spring Cloud Eureka-服务注册
- spring cloud服务发现之Eureka
- spring cloud eureka服务发现(高可用)
- spring cloud eureka 集群 服务集群 测试
- Spring Cloud 基于eureka 服务注册中心
- Spring Cloud学习--服务发现(Eureka)
- spring cloud eureka服务发现(高可用)
- SSM框架下使用PageHelper分页
- 网站文章为何需要关键词做锚文本
- 深入理解equal方法和hascode方法
- 多进程---错误解决AttributeError: Can't get attribute 'long_time_task' on <module '__main__' (built-in)>
- 解决mySQL占用内存超大问题
- 服务治理 Spring Cloud Eureka
- Spring MVC快速入门教程
- Swap Nodes in Pairs
- Mybatis使用介绍
- flex布局基本属性用法示例以及常见布局
- 字符串的模式匹配中的算法
- GBDT原理理解
- h5链接分享微信朋友圈,压缩图标题内容设置
- String.split的坑