zoukankan      html  css  js  c++  java
  • Eureka 服务与发现(单机模式)

    1......   概念: 

                Eureka   是Netflix开发的服务发现框架,本身是一个基于REST的服务,

               主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中,以实现SpringCloud的服务发现功能。

    2.....    基于上次代码:

                  基于springBoot,,springCloud,mybatis 框架简单 微服开发 ==CRUD (依次为基础进行 添加 eureka 服务与 发现代码

    3.....  provider 类 的 resources / application.yml 加上代码    

     1 server:
     2   port: 8001
     3 mybatis:
     4   config-location: classpath:mybatis/mybatis.cfg.xml #mybatis 配置文件路径
     5   type-aliases-package: com.wsc.core.pojo # entity别名类所在包
     6   mapper-locations: mybatis/mapper/*.xml    # mapper映射文件
     7 spring:
     8   application:
     9     name: microserver-product #这个很重要,这在以后的服务与服务之间相互调用一般都是根据这个name
    10   datasource:
    11     type: com.alibaba.druid.pool.DruidDataSource
    12     driver-class-name: com.mysql.cj.jdbc.Driver
    13     url: jdbc:mysql://127.0.0.1:3306/springcloud_db01?serverTimezone=GMT%2B8
    14     password: wsc
    15     username: root
    16     dbcp2:
    17       min-idle: 5                         # 数据库连接池的最小维持连接数
    18       initial-size: 5                     # 初始化连接数
    19       max-total: 5                        # 最大连接数
    20       max-wait-millis: 150                                    # 等待连接获取的最大超时时间
    21 
    22 eureka:
    23   client:
    24     register-with-eureka: true             #服务注册开关
    25     fetch-registry: true                  #服务发现开关
    26     service-url:
    27       defaultZone: http://localhost:6001/eureka # 1 显示主机名
    28   instance:
    29     instanceId: ${spring.application.name}.${server.port} #  2   指定实例ID 不显示主机名
    30     preferipAddress: true
    View Code

               启动类上:加上注解:

    1 @EnableEurekaClient //  本服务启动后 自动注册进Eureka中心
    2 @MapperScan("com.wsc.core.mapper") //mapper扫描包 类 ProductMapper
    3 @SpringBootApplication 
    4 public class Start_8001 {
    5     public static void main(String[] args) {
    6         SpringApplication.run(Start_8001.class,args);
    7     }
    8 }

    4..... 新建 eureka-6001 服务包

       resources / application.yml

     1 server:
     2   port: 6001
     3 eureka:
     4   instance:
     5     hostname: localhost
     6   server:
     7     enable-self-preservation: false  # 禁用自我保护模式
     8   client:
     9     register-with-eureka: false #服务注册开关
    10     fetch-registry: false #服务发现开关
    11     service-url:
    12      defaultZone:  #  http://localhost:6001/eureka   #  1  显示主机名 单机是配置自己  如果不配置默认端口是8761
    13        http://${eureka.instance.hostname}.${server.port}/eureka   #  不显示主机名
    View Code 

     启动类:  

     1 package com.wsc.core.eureka;
     2 
     3 import org.springframework.boot.SpringApplication;
     4 import org.springframework.boot.autoconfigure.SpringBootApplication;
     5 import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
     6 
     7 /**
     8  * @version 1.0
     9  * @ClassName Start_6001
    10  * @Description TODO
    11  * @Author WSC
    12  * @Date 2019/8/28 14:11
    13  **/
    14 @EnableEurekaServer //声明注册中心
    15 @SpringBootApplication
    16 public class Start_6001 {
    17     public static void main(String[] args) {
    18         SpringApplication.run(Start_6001.class,args);
    19     }
    20 }
    View Code

    5....测试结果:

    单机

    这是测试关闭保护,正常开发需要开启保护。

    enable-self-preservation: false  # 禁用自我保护模式 (不写  或 设置 true)

     THE SELF PRESERVATION MODE IS TURNED OFF.THIS MAY NOT PROTECT INSTANCE EXPIRY IN CASE OF NETWORK/OTHER PROBLEMS.    

    自我保护模式被关闭,这可能无法在网络/其他问题的情况下保护实例失效。

  • 相关阅读:
    【多视图几何】TUM 课程 第5章 双视图重建:线性方法
    【多视图几何】TUM 课程 第4章 同名点匹配
    【多视图几何】TUM 课程 第3章 透视投影
    SpringMVC配置实例
    sqlserver的触发器练习实例
    zTree学习实例
    浅谈JVM与内存分配
    Ajax的简单实用实例
    Sqlserver事务备份和还原实例
    JQueryEasyUI学习简单Demo
  • 原文地址:https://www.cnblogs.com/wangshichang/p/11425876.html
Copyright © 2011-2022 走看看