• SpringCloud系列(13)--Eureka服务名称修改和服务IP显示


    前言:在上一章节中我们把服务提供者做成了集群,而本章节则是一些关于服务信息的配置,这部分知识对集群整体影响不大,不过最好还是掌握,毕竟万一有用到的地方呢

    1、修改服务的名称

    有时候我们想要修改服务的名称,让服务名称按照我们提供的名称来显示,这时候就可以通过修改配置来实现修改服务名称

    (1)分别修改provider-payment8001和provider-payment8002的application.yml文件在eureka参数下加上instance:instance-id:payment8001和instance:instance-id:payment8002这一参数,从而指定服务名称

    例:

    provider-payment8001

    1. #服务端口号
    2. server:
    3. port: 8001
    4. #服务名称
    5. spring:
    6. application:
    7. name: cloud-payment-service
    8. datasource:
    9. type: com.alibaba.druid.pool.DruidDataSource #当前数据源操作类型
    10. driver-class-name: com.mysql.cj.jdbc.Driver #mysql驱动包(mysql驱动包版本是5的要写成com.mysql.jdbc.Driver)
    11. url: jdbc:mysql://localhost:3306/cloud?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8 #mysql连接路径,记得把cloud这个数据库名改成自己的,或者新建名为cloud的数据库
    12. username: root
    13. password: 123456
    14. eureka:
    15. client:
    16. #表示是否将自己注册进Eureka Server里,默认为true
    17. register-with-eureka: true
    18. #是否从Eureka Server抓取已有的注册信息,默认为true,单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
    19. fetch-registry: true
    20. service-url:
    21. #defaultZone: http://localhost:7001/eureka
    22. defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
    23. instance:
    24. instance-id: payment8001
    25. #mybatis配置
    26. mybatis:
    27. mapper-locations: classpath:mapper/*.xml #扫描类路径下的mapper文件夹下所有的.xml配置文件
    28. type-aliases-package: com.ken.springcloud.entities #该包下的所有Entity类都取默认别名

    效果图:

    provider-payment8002

    1. #服务端口号
    2. server:
    3. port: 8002
    4. #服务名称
    5. spring:
    6. application:
    7. name: cloud-payment-service
    8. datasource:
    9. type: com.alibaba.druid.pool.DruidDataSource #当前数据源操作类型
    10. driver-class-name: com.mysql.cj.jdbc.Driver #mysql驱动包(mysql驱动包版本是5的要写成com.mysql.jdbc.Driver)
    11. url: jdbc:mysql://localhost:3306/cloud?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8 #mysql连接路径,记得把cloud这个数据库名改成自己的,或者新建名为cloud的数据库
    12. username: root
    13. password: 123456
    14. eureka:
    15. client:
    16. #表示是否将自己注册进Eureka Server里,默认为true
    17. register-with-eureka: true
    18. #是否从Eureka Server抓取已有的注册信息,默认为true,单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
    19. fetch-registry: true
    20. service-url:
    21. #defaultZone: http://localhost:7001/eureka
    22. defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
    23. instance:
    24. instance-id: payment8002
    25. #mybatis配置
    26. mybatis:
    27. mapper-locations: classpath:mapper/*.xml #扫描类路径下的mapper文件夹下所有的.xml配置文件
    28. type-aliases-package: com.ken.springcloud.entities #该包下的所有Entity类都取默认别名

    效果图:

    (2)查看配置是否生效

    重新启动provider-payment8001模块和provider-payment8001模块,然后分别进入http://eureka7001.com:7001/http://eureka7002.com:7002/查看效果,如果服务名称按照我们配置的来显示,则证明配置生效,服务名修改成功

    (注意:在这两个模块启动前要先启动eureka-server7001模块和eureka-server7002模块)

    效果图:

    eureka7001

     eureka7002

    2、使服务的ip地址显示出来

    不知道大家有没有发现当光标移到服务名称时左下角会出现一个IP地址,而这个IP地址显示是电脑名称加上端口号,这对于我们来说是不方便的,因为不能直观的了解这个服务所在的IP,如果服务出现问题,需要排错,那这时候也没办法快速的定位服务所在服务器的IP地址,这时候就可以通过修改配置可以实现IP地址的显示

    (1)分别修改provider-payment8001和provider-payment8002的application.yml文件在eureka:instance参数下加上prefer-ip-address:true这一参数,从而让访问路径可以显示IP地址

    例:

    provider-payment8001

    1. #服务端口号
    2. server:
    3. port: 8001
    4. #服务名称
    5. spring:
    6. application:
    7. name: cloud-payment-service
    8. datasource:
    9. type: com.alibaba.druid.pool.DruidDataSource #当前数据源操作类型
    10. driver-class-name: com.mysql.cj.jdbc.Driver #mysql驱动包(mysql驱动包版本是5的要写成com.mysql.jdbc.Driver)
    11. url: jdbc:mysql://localhost:3306/cloud?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8 #mysql连接路径,记得把cloud这个数据库名改成自己的,或者新建名为cloud的数据库
    12. username: root
    13. password: 123456
    14. eureka:
    15. client:
    16. #表示是否将自己注册进Eureka Server里,默认为true
    17. register-with-eureka: true
    18. #是否从Eureka Server抓取已有的注册信息,默认为true,单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
    19. fetch-registry: true
    20. service-url:
    21. #defaultZone: http://localhost:7001/eureka
    22. defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
    23. instance:
    24. instance-id: payment8001
    25. #访问路径可以显示IP地址
    26. prefer-ip-address: true
    27. #mybatis配置
    28. mybatis:
    29. mapper-locations: classpath:mapper/*.xml #扫描类路径下的mapper文件夹下所有的.xml配置文件
    30. type-aliases-package: com.ken.springcloud.entities #该包下的所有Entity类都取默认别名

    效果图:

    provider-payment8002

    1. #服务端口号
    2. server:
    3. port: 8002
    4. #服务名称
    5. spring:
    6. application:
    7. name: cloud-payment-service
    8. datasource:
    9. type: com.alibaba.druid.pool.DruidDataSource #当前数据源操作类型
    10. driver-class-name: com.mysql.cj.jdbc.Driver #mysql驱动包(mysql驱动包版本是5的要写成com.mysql.jdbc.Driver)
    11. url: jdbc:mysql://localhost:3306/cloud?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8 #mysql连接路径,记得把cloud这个数据库名改成自己的,或者新建名为cloud的数据库
    12. username: root
    13. password: 123456
    14. eureka:
    15. client:
    16. #表示是否将自己注册进Eureka Server里,默认为true
    17. register-with-eureka: true
    18. #是否从Eureka Server抓取已有的注册信息,默认为true,单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
    19. fetch-registry: true
    20. service-url:
    21. #defaultZone: http://localhost:7001/eureka
    22. defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
    23. instance:
    24. instance-id: payment8002
    25. #访问路径可以显示IP地址
    26. prefer-ip-address: true
    27. #mybatis配置
    28. mybatis:
    29. mapper-locations: classpath:mapper/*.xml #扫描类路径下的mapper文件夹下所有的.xml配置文件
    30. type-aliases-package: com.ken.springcloud.entities #该包下的所有Entity类都取默认别名

    效果图:

    (2)查看配置是否生效

    重新启动provider-payment8001模块和provider-payment8001模块,然后分别进入http://eureka7001.com:7001/http://eureka7002.com:7002/查看效果,如果光标移到到服务名称上时,左下角显示出来的是真实IP,则证明配置生效,访问路径可以显示IP地址

    (注意:在这两个模块启动前要先启动eureka-server7001模块和eureka-server7002模块)

    效果图:

    eureka7001

    eureka7002

    注意:其实服务名称的修改和IP地址的显示需要依赖以下这两个依赖,如果没有引入这两个依赖,那可能会导致配置失效

  • 相关阅读:
    【MySQL】并发事务产生的问题及事务隔离级别
    selenium 组合键操作
    Redis面试(一)
    Java中如何遍历Map中的value呢?
    修正两个shapefile之间的数字化错误
    Matlab回归分析
    Flink状态Checkpoints检查点设置
    65岁以上老人“日行万步”不可取?每天走多少步更利于健康?
    后台任务 window.requestIdleCallback 方法的使用
    SpringBoot拦截器和动态代理有什么区别?
  • 原文地址:https://blog.csdn.net/m0_64284147/article/details/132249249