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

Eureka注册中心通用写法和配置

  • 下面简单介绍下 Eureka 注册中心的通用写法

  • 新建个空项目,pom 中加入如下依赖

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.5.12</version></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId><version>3.0.5</version></dependency><dependency><groupId>at.twinformatics</groupId><artifactId>eureka-consul-adapter</artifactId><version>1.3.0</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId><version>2.5.8</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-actuator</artifactId><version>2.7.18</version></dependency>
</dependencies>
  • 新建个包路径:com.xdr630.registry.config
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {@Value("${eureka.security.enabled:false}")private boolean securityEnabled;@Overrideprotected void configure(HttpSecurity http) throws Exception {// 关闭csrf设置http.csrf().disable();if(!securityEnabled){// 配置不需要登录验证http.authorizeRequests().anyRequest().permitAll().and().logout().permitAll();return;}super.configure(http);}
}
  • 在 com.xdr630.registry 包下,新建启动类
@EnableEurekaServer
@SpringBootApplication
public class EurekaServerApplication {private static final Logger log = LoggerFactory.getLogger(EurekaServerApplication.class);public static void main(String[] args) {SpringApplication app = new SpringApplication(EurekaServerApplication.class);app.addListeners(new ApplicationPidFileWriter(), new WebServerPortFileWriter());Environment env = app.run(args).getEnvironment();logApplicationStartup(env);}private static void logApplicationStartup(Environment env) {String protocol = "http";if (env.getProperty("server.ssl.key-store") != null) {protocol = "https";}String serverPort = env.getProperty("server.port");String contextPath = env.getProperty("server.servlet.context-path");if (StringUtils.isEmpty(contextPath)) {contextPath = "/";}String hostAddress = "localhost";try {hostAddress = InetAddress.getLocalHost().getHostAddress();} catch (UnknownHostException e) {log.warn("The host name could not be determined, using `localhost` as fallback");}// @formatter:offlog.info("\n----------------------------------------------------------\n\t" +"Application '{}' is running! Access URLs:\n\t" +"Local: \t\t{}://localhost:{}{}\n\t" +"External: \t{}://{}:{}{}\n\t" +"Profile(s): \t{}\n----------------------------------------------------------",env.getProperty("spring.application.name"),protocol,serverPort,contextPath,protocol,hostAddress,serverPort,contextPath,env.getActiveProfiles());// @formatter:on}
}
  • resources 下 application.yml
spring:application:name: eureka-registry# 配置认证用户名和密码,不配置系统会随机生成security:user:name: user	#认证用户名password: 123456 #认证密码
server:port: 8081eureka:server:#关闭自我保护模式enableSelfPreservation: false#主动失效时间,默认60*1000evictionIntervalTimerInMs: 5000#禁用readOnlyCacheMapuseReadOnlyResponseCache: falseclient:registerWithEureka: falsefetchRegistry: falseserviceUrl:#defaultZone: http://localhost:8081/eureka/  #未开启认证时urldefaultZone: http://user:123456@localhost:8081/eureka/ #开启认证时urlmanagement:endpoints:web:exposure:include: "*" #["configprops", "env", "health", "info", "jhimetrics", "logfile", "loggers", "threaddump"]endpoint:health:show-details: always #when_authorizedenv:enabled: falsemappings:enabled: falseconfigprops:enabled: falseheapdump:enabled: falseloggers:enabled: falseconditions:enabled: falsebeans:enabled: falsemetrics:enable:http: truejvm: truelogback: trueprocess: truesystem: truedistribution:percentiles-histogram:all: truepercentiles:all: 0, 0.5, 0.75, 0.95, 0.99, 1.0
  • logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration>
<configuration scan="false"><include resource="org/springframework/boot/logging/logback/defaults.xml" /><property name="APP_NAME" value="registry-eureka"/><property name="LOG_FILE" value="${BUILD_FOLDER:-logs}/${APP_NAME}"/><property name="LOG_PATTERN" value="[%d{yyyy-MM-dd HH:mm:ss.SSS}] %level [${APP_NAME:-},%X{traceId},%X{spanId},%X{parentId}] ${PID:- } --- [%thread] %-40.40class{39} %L: %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx} \n"/><appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${LOG_FILE}.log</file><rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"><fileNamePattern>${LOG_FILE}-%d{yyyyMMdd}.log.%i</fileNamePattern><maxFileSize>100MB</maxFileSize><maxHistory>30</maxHistory><totalSizeCap>20GB</totalSizeCap></rollingPolicy><encoder><Pattern>${LOG_PATTERN}</Pattern></encoder></appender><appender name="console" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>${LOG_PATTERN}</pattern></encoder></appender><root level="info"><appender-ref ref="console"/><appender-ref ref="file"/></root><logger name="org.mybatis.spring" level="INFO"/><logger name="io.netty" level="INFO"/><logger name="com.ulisesbocchio" level="INFO"/><logger name="org.quartz" level="INFO"/></configuration>

在这里插入图片描述

http://www.dtcms.com/a/474020.html

相关文章:

  • python内置函数map()解惑:将可迭代对象中的每个元素放入指定函数处理
  • 吕口*云蛇吞路的特效*程序系统方案
  • c 网站购物车怎么做.net 网站 源代码
  • 网站建设开发合同模板优秀的商城网站首页设计
  • 服务注册、服务发现、OpenFeign及其OKHttp连接池实现
  • 设计模式篇之 门面模式 Facade
  • 2026年COR SCI2区,自适应K-means和强化学习RL算法+有效疫苗分配问题,深度解析+性能实测,深度解析+性能实测
  • 广州黄浦区建设局网站网站免费模版代码
  • 寄存器技术深度解析:从硬件本质到工程实践
  • **发散创新:探索量化模型的设计与实现**一、引言随着大数据时代的到来,量化模型在金融、医疗、科研等领域的应用越来越广泛。本文将
  • windows查看端口使用情况,以及结束任务释放端口
  • 开源安全管理平台wazuh-与网络入侵检测系统集成增强威胁检测能力
  • 【004】生菜阅读平台
  • 南通网站建设兼职电商平台如何做推广
  • 守护集群与异步备库区别
  • UDP可靠性传输指南:从基础机制到KCP协议核心解析
  • SQL常用函数
  • 义乌建网站引流推广软件
  • Ansible Role修改IP地址与主机名
  • 贺Filcion五周岁:Chain Shop 10月17号正式上线
  • 部分Spark SQL编程要点
  • 【完整源码+数据集+部署教程】 飞机表面缺陷检测系统源码和数据集:改进yolo11-EfficientFormerV2
  • 工作做ppt课件的网站广州抖音seo
  • Java并发编程实战深度解析线程池ThreadPoolExecutor的设计原理与性能优化策略
  • 烟台建设公司网站兰州新区网站建设
  • OpenWrt之ipv6防火墙配置放行局域网设备的公网ipv6
  • 第一个爬虫程序:用 Requests+BeautifulSoup 抓取豆瓣电影 Top250
  • JavaScript 企业面试与学习难度拆解:从0到中高级的阶梯式路线图
  • 北京互联网公司有多少家seo词条
  • 网站项目建设所需成本网站前端建设需要学会什么