spring cloud 一 (配置 eureka )

Eureka服务发现机制与Spring Cloud集成
本文详细介绍了Eureka服务发现框架的工作原理及其在Spring Cloud中的集成过程。包括如何搭建Eureka Server,配置客户端注册,以及实现服务发现功能的具体步骤。

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

eureka 工作原理:
在这里插入图片描述

看懂了原理,那么我们来做具体实现:

第一步
1、编写 eureka server 端,这个非常简单。
使用 idea 工具 创建spring boot 项目
只选用 选择 Cloud Discovery --> eureka Server 一个依赖:

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

2、然后 配置 属性文件: application.yml

spring:
  application:
    name: helloEureka #  服务名称

eureka:
  client:
#    service-url:  #如果需要部署集群,服务器之间需要相互注册,完成相互同步注册的client 端。
#      defaultZone: http://localhost:8000/eureka/  //这里是需要注册的服务器地址 多个服务器用 都好隔开
    register-with-eureka: false  #自己不需要注册自己所以需要设置成false
  server:
    enable-self-preservation: false #注册中心保护开关  默认打开,为了方便测试 需要把它关闭
    #保护机制,是防止由于网络延迟导致eureka 错误的判断其他服务挂掉了,而作为地址缓存机制,这样可以保证当网络正常是,能够再次连上。

server:
  port: 8000  端口号。

3、 在 application.class 类上添加注解: 启动服务。()

@SpringBootApplication
@EnableEurekaServer    //添加 服务注解
public class EurekaserverApplication {
	public static void main(String[] args) {
		SpringApplication.run(EurekaserverApplication.class, args);
	}
}

访问:localhost:8000 就可以看见服务器首页了。

第二步: 创建 两个客户端:
1、添加依赖:这里必要的三个依赖
① Cloud Discovery --> eureka Discovery
② Web --> web

        <!-- eureka  client-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

        <!-- web 应用的 基本 依赖 这个不要过多解释-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

2、配置 application.class

@SpringBootApplication
@EnableDiscoveryClient  //注册为 客户端
public class ProductApplication {
	public static void main(String[] args) {
		SpringApplication.run(ProductApplication.class, args);
	}
}

3、配置 application.yml (启动,就可以连上 服务器)

server:
  port: 8081

eureka:
  client:
    service-url:
      defaultZone:  http://localhost:8000/eureka/   #向该地址的 eureka 服务器 注册,如果注册多个服务用逗号隔开。

# 应用注册 eureka 名称
spring:
  application:
    name: productClient

启动后,再次刷新 localhost:8080 就可以看见我们注册上去 的 productClient 客户端。注意在同一个机器上,需要修改不同的端口号。

Nano-ESG数据资源库的构建基于2023年初至2024年秋季期间采集的逾84万条新闻文本,从中系统提炼出企业环境、社会及治理维度的信息。其构建流程首先依据特定术语在德语与英语新闻平台上检索,初步锁定与德国DAX 40成分股企业相关联的报道。随后借助嵌入技术对文本段落执行去重操作,以降低内容冗余。继而采用GLiNER这跨语言零样本实体识别系统,排除与目标企业无关的文档。在此基础上,通过GPT-3.5与GPT-4o等大规模语言模型对文本进行双重筛选:方面判定其与ESG议题的相关性,另方面生成简明的内容概要。最终环节由GPT-4o模型完成,它对每篇文献进行ESG情感倾向(正面、中性或负面)的判定,并标注所涉及的ESG具体维度,从而形成具备时序特征的ESG情感与维度标注数据集。 该数据集适用于多类企业可持续性研究,例如ESG情感趋势分析、ESG维度细分类别研究,以及企业可持续性事件的时序演变追踪。研究者可利用数据集内提供的新闻摘要、情感标签与维度分类,深入考察企业在不同时期的环境、社会及治理表现。此外,借助Bertopic等主题建模方法,能够从数据中识别出与企业相关的核心ESG议题,并观察这些议题随时间的演进轨迹。该资源以其开放获取特性与连续的时间覆盖,为探究企业可持续性表现的动态变化提供了系统化的数据基础。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
### 配置 Spring Cloud 项目中的 Eureka 集群 为了确保Eureka服务器能够在Spring Cloud项目中实现高可用性集群,需遵循特定的配置方法。 创建个新的Spring Boot项目`springboot-eureka-server`作为Eureka服务器的部分,在此过程中无需单独引入`eureka-server`依赖项,因为这些已经在父级工程`sprintcloud-eureka`中定义好了[^2]。对于每个计划部署成集群节点的服务实例,应该适当调整应用属性文件内的配置来指定不同的端口号和服务URL地址。例如,第Eureka服务实例监听于9000端口而第二个则位于8000端口上运行[^3]。 #### 启用Eureka Server功能 在主应用程序类或者配置类之上添加注解@EnableEurekaServer用于开启Eureka Server的功能支持;如果希望该服务也能发现其他微服务,则还需额外加上@EnableDiscoveryClient注解[^4]。 ```java import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @EnableEurekaServer public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` #### 修改application.yml配置文件 为了让多个Eureka实例相互注册并组成集群,需要编辑每个节点的应用程序配置文件(application.yml),指明它们之间互相通信的方式以及默认区名等参数: ```yaml server: port: 8761 # 或者其他的端口号比如9000/8000依据具体需求设定 eureka: instance: hostname: localhost client: register-with-eureka: false fetch-registry: false service-url: defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ # 如果有更多peer节点加入到集群当中的话还需要继续追加defaultZone列表里的条目指向其它成员的位置信息。 ``` 当完成了以上步骤之后就可以启动各个Eureka实例从而构建起个具备冗余特性的服务中心环境了[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值