优惠券项目--Eureka配置

171 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 5 天,点击查看活动详情

1.启动项目

image.png

2.浏览器访问 http://127.0.0.1:8000

image.png

3.配置分布式服务

3.1window操作系统配置host

127.0.0.1 server1
127.0.0.1 server2
127.0.0.1 server3

3.2新增配置bootstrap.yml文件

image.png
配置server1:

spring:
  application:
    name: coupon-eureka
  profiles: server1
server:
  port: 8001
eureka:
  instance:
    hostname: server1
    prefer-ip-address: false
  client:
    service-url:
      defaultZone: http://server2:8002/eureka/,http://server3:8003/eureka/

配置说明:

  • spring.profiles,用来标识不同的配置信息
  • eureka.instance.prefer-ip-address prefer-ip-address,默认是true,即默认使用ip地址向Eureka注册。SpringCloud不允许在一台机器或一个IP地址上部署多个Eureka实例,因为一旦机器挂了,不论这台机器上部署了多少个实例,都会随着机器挂掉而挂掉,这种部署方式无法保证高可用性,这也是为什么prefer-ip-address的默认值是true
  • client: service-url: defaultZone:将除了本身节点之外的其他eureka节点 server2和server3的节点如下: image.png

3.3配置pom.xml文件

image.png 配置打包方式(打包方式为jar):

<packaging>jar</packaging>

引入eureka依赖

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
    </dependency>
</dependencies>

3.4使用工具生成jar包

在imooc-coupon的根目录下,使用maven命令生成jar包(点击clean,接着点击package) image.png
生成之后:

image.png
可以看到target目录下生成了后缀为.jar的文件

3.5分别启动server1,server2和server3(如果有更改配置,要把target删除重新生成)

cmd命令进入target目录:

java -jar coupon-eureka-1.0-SNAPSHOT.jar --spring.profiles.files=server1

image.png server2启动 image.png server3启动 image.png 3.6使用浏览器访问
http://127.0.0.1:8001/ image.png http://127.0.0.1:8002/ image.png http://127.0.0.1:8003/ image.png 总结:
8001可以看到的副本为8002和8003
8002可以看到的副本为8001和8003
8003可以看到的副本为8001和8002