当前位置: 首页 > article >正文

SpringCloud-Eureka

父工程

<!--SpringCloud-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>Greenwich.SR1</version>
</dependency>
<!--SpringBoot-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-dependencies</artifactId>
    <version>2.1.4.RELEASE</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>
</project>

eureka 注册中心

  • 依赖
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-eureka-server</artifactId>
    <version>1.4.6.RELEASE</version>
</dependency>
  • 启动类开启Eureka服务端@EnableEurekaServer
  • 配置信息
server:
  port: 7001
# Eureka
eureka:
  instance:
    # Eureka服务端的实例名称
    hostname: localhost
  client:
    # false表示不向Eureka注册自己
    register-with-eureka: false
    # false表示自己是注册中心
    fetch-registry: false
    service-url:
      # 单机:defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
      # 集群(配置要关联的eureka客户端)
      defaultZone: http://eureka7002:7002/eureka/,http://eureka7003:7003/eureka/
  • 主机名称配置文件:C:\Windows\System32\drivers\etc\hosts “ip    名称”

服务提供者

  • 依赖
<!--eureka-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-eureka</artifactId>
    <version>1.4.6.RELEASE</version>
</dependency>
<!--监控-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!--实体类-->
  • 配置信息
server:
  port: 8081
mybatis:
  # 别名配置
  type-aliases-package: com.example.pojo
  # 配置类的位置
  config-location: classpath:mybatis/mybatis-config.xml
  # 扫描映射文件
  mapper-locations: classpath:mybatis/mapper/*.xml
spring:
  application:
    name: springcloud-provider-dept
  datasource:
    username: root
    password: root
    url: jdbc:mysql://localhost:3306/spring_cloud?useSSL=true&useUnicode=true&charsetEncoding=UTF-8&serverTimezone=UTC
    driver-class-name: com.mysql.jdbc.Driver
# eureka
eureka:
  # 客户端注册
  client:
    service-url: 
      # 注册到哪里
      defaultZone: http://eureka7001:7001/eureka/,http://eureka7002:7002/eureka/,http://eureka7003:7003/eureka/
  instance:
    # 设置客户端实例的访问链接描述
    instance-id: springcloud-provider-dept-8081
# 客户端info配置
info:
  # 访问 localhost:8081/actuator/info 得到json数据:{"app":{"name":"部门信息"}}
  app.name: 部门信息
  • 启动类添加注解
    开启Eureka@EnableEurekaClient
    服务发现@EnableDiscoveryClient
import org.springframework.cloud.client.discovery.DiscoveryClient;
// 获取配置信息,得到具体的微服务等
@Autowired
private DiscoveryClient client;
@GetMapping("/discovery")
public Object discovery(){
    // 获取微服务列表
    List<String> services = client.getServices();
    // 获取具体的微服务的信息
    List<ServiceInstance> instances = client.getInstances("springcloud-provider-dept");
    return client;
}

消费者

  • 引入实体类模块的依赖
  • 配置端口号
  • 添加配置类
@Configuration
public class ConfigBean {
    @Bean
    public RestTemplate restTemplate(){
        return new RestTemplate();
    }
}
  • 无需引入远程服务,直接通过http请求,通过 RestTemplate 实现
@RestController
@RequestMapping("/consumer/dept")
public class DeptController {
    @Autowired
    private RestTemplate restTemplate;
    @GetMapping("/query/{deptNo}")
    public Dept queryByDeptNo(@PathVariable("deptNo") Long deptNo){
        return restTemplate.getForObject("http://localhost:8081/dept/query/" + deptNo, Dept.class);
    }
}

http://www.kler.cn/a/227925.html

相关文章:

  • AI 的安全性与合规性:实践中的最佳安全策略
  • 使用openwrt搭建ipsec隧道
  • 零基础Vue入门4——Vue3基础核心
  • 人工智能在计算机视觉中的应用与创新发展研究
  • 【重生之我在学习C语言指针详解】
  • Unity游戏(Assault空对地打击)开发(1) 创建项目和选择插件
  • 07、全文检索 -- Solr -- Solr 全文检索 之 为索引库添加中文分词器
  • Redis——SpringBoot整合Redis实战
  • 嵌入式中经典面试题分析
  • 图解Vue组件通讯【一图胜千言】
  • 牛客寒假训练营H题
  • 华为机考入门python3--(7)牛客7-取近似值
  • QT 范例阅读:系统托盘 The System Tray Icon example
  • 游戏如何选择服务器
  • 利用自定义注解和反射优雅处理对象字段
  • VUE3语法--computed计算属性中get和set使用案例
  • 常见的web前端开发框架介绍
  • 消息中间件(MQ)对比:RabbitMQ、Kafka、ActiveMQ 和 RocketMQ
  • 谷粒商城-P19
  • VitePress-08-文档中代码组的使用
  • sklearn 计算 tfidf 得到每个词分数
  • MySQL创建索引的注意事项
  • 华为数通方向HCIP-DataCom H12-831题库(简答题01-27)
  • pdmodel从动态模型转成静态onnx
  • WiFi测试的核心思路和主要工具
  • BAPI_PRODORD_CREATE-创建生产订单BAPI测试