spring-cloud eureka 注册中心

本贴最后更新于 2045 天前,其中的信息可能已经渤澥桑田

eureka server 配置

1.Maven 导入
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
2.增加 Application.java 注解 @EnableEurekaServer
3.配置 properties
# 服务器端口
server.port = 9090
# 应用名称
spring.application.name = eureka.server
# 取消服务器自我注册
eureka.client.register-with-eureka = false
# 不检索服务[本身为服务器,所以不需要检索]
eureka.client.fetch-registry = false
# eureka server 服务url , 用于客户端注册
eureka.client.service-url.defaultZone = http://localhost:${server.port}/eureka

@ 双节点 server

配置 properties
# 服务器端口
server.port = 9090
# 应用名称
spring.application.name = eureka.server
# 因为需要向另一个eureka server注册,所以开启
eureka.client.register-with-eureka = true
# 需要检索另一个eureka server
eureka.client.fetch-registry = true
# 配置另一个eureka server的服务地址
eureka.client.service-url.defaultZone = \
	http://{other server host}:${server.port}/eureka

注意 : 双节点 eureka.client.service-url.defaultZone 互相配置,多节点配置以 , 分隔,配置其他 eureka server 地址即可

eureka client producer 配置

1.Maven 导入
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
2.增加 Application.java 注解 @EnableDiscoveryClient
3.配置 properties
# 服务器端口
server.port = 8080
# 应用名称
spring.application.name = eureka.client.producer
# eureka server 服务url , 用于客户端注册
eureka.client.service-url.defaultZone = http://localhost:9090/eureka
4.增加暴露 rest url 的 controller
@RestController
public class HelloController {

    @RequestMapping("/producer/hello")
    public String index(@RequestParam String name) {
        return "hello "+name+",this is first messge";
    }
}

eureka client consumer 配置

1.Maven 导入
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
2.增加 Application.java 注解
@EnableDiscoveryClient
@EnableFeignClients
3.配置 properties
# 服务器端口
server.port = 7070
# 应用名称
spring.application.name = eureka.client.consumer
# eureka server 服务url , 用于客户端注册
eureka.client.service-url.defaultZone = http://localhost:9090/eureka
4.增加接口
@FeignClient("eureka.client.producer") //要与producer的spring.application名称保持一致
public interface HelloRemote {
    @RequestMapping(value = "/producer/hello") //要与producer暴露的url一致
    String hello(@RequestParam(value = "name") String name);
}
5.增加调用 producer 的 controller
@RestController
public class ConsumerController {

    @Autowired
    public HelloRemote HelloRemote;

    @RequestMapping("/hello/{name}")
    public String index(@PathVariable("name") String name) {
        return HelloRemote.hello(name);
    }

}
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1083 引用 • 3461 回帖 • 287 关注
  • Spring

    Spring 是一个开源框架,是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 JavaEE 应用程序开发提供集成的框架。

    940 引用 • 1458 回帖 • 160 关注
  • Eureka
    22 引用 • 3 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...