|
|
|
@ -1,6 +1,8 @@
|
|
|
|
|
eureka:
|
|
|
|
|
client:
|
|
|
|
|
service-url:
|
|
|
|
|
# 配置Eureka服务端的地址,这里指定了Eureka Server的URL,客户端(当前应用)会向这个地址注册自身服务信息,
|
|
|
|
|
# 并且可以从这里获取到其他已注册服务的相关信息,用于实现服务发现和服务间的调用等功能。
|
|
|
|
|
defaultZone: http://111.231.119.253:8761/eureka
|
|
|
|
|
# instance:
|
|
|
|
|
# ip-address: 106.14.163.235
|
|
|
|
@ -8,39 +10,87 @@ eureka:
|
|
|
|
|
spring:
|
|
|
|
|
zipkin:
|
|
|
|
|
sender:
|
|
|
|
|
# 指定了Zipkin数据发送的类型为web,Zipkin用于分布式链路追踪,通过这种方式可以将应用的链路追踪数据发送到Zipkin服务端,
|
|
|
|
|
# 方便对微服务架构下的请求链路进行监控、分析性能问题以及排查故障等操作。
|
|
|
|
|
type: web
|
|
|
|
|
application:
|
|
|
|
|
# 定义当前应用在注册中心(如Eureka)中的服务名称,其他服务可以通过这个名称来发现和调用本服务,
|
|
|
|
|
# 同时在配置一些与服务相关的路由、负载均衡等规则时也会用到这个名称作为标识。
|
|
|
|
|
name: user-service
|
|
|
|
|
cloud:
|
|
|
|
|
config:
|
|
|
|
|
discovery:
|
|
|
|
|
# 开启配置中心服务发现功能,使得应用可以从配置中心获取配置信息,
|
|
|
|
|
# 而不是将配置文件硬编码在项目中,提高了配置的集中管理和动态更新能力。
|
|
|
|
|
enabled: true
|
|
|
|
|
# 指定配置中心服务在注册中心(如Eureka)中的服务ID,通过这个ID来查找并连接对应的配置中心服务,
|
|
|
|
|
# 配置中心服务负责存储和管理各个微服务的配置内容,实现配置的统一管理。
|
|
|
|
|
service-id: SNAILMALL-CONFIG-SERVER
|
|
|
|
|
profile: dev
|
|
|
|
|
bus:
|
|
|
|
|
trace:
|
|
|
|
|
# 启用Spring Cloud Bus的链路追踪功能,Spring Cloud Bus可以用于在微服务架构中实现配置的动态刷新等功能,
|
|
|
|
|
# 开启链路追踪后能更方便地查看与配置刷新相关的请求链路情况,便于排查问题和监控。
|
|
|
|
|
enabled: true
|
|
|
|
|
# 启用Spring Cloud Bus,它可以通过消息代理(如RabbitMQ、Kafka等)来实现微服务之间的事件传播,
|
|
|
|
|
# 常用于配置的动态刷新、服务状态的广播等场景,增强了微服务之间的协作和交互能力。
|
|
|
|
|
enabled: true
|
|
|
|
|
datasource:
|
|
|
|
|
# 指定数据源的类型为阿里巴巴的Druid数据源,Druid是一款性能优秀、功能强大的数据库连接池,
|
|
|
|
|
# 它提供了丰富的监控、扩展等功能,能够更好地管理数据库连接,提高数据库访问的效率和稳定性。
|
|
|
|
|
type: com.alibaba.druid.pool.DruidDataSource
|
|
|
|
|
# 配置数据库驱动类的全限定名,这里是针对MySQL数据库的JDBC驱动,用于建立与MySQL数据库的连接,
|
|
|
|
|
# 根据实际使用的数据库类型不同,需要配置相应的驱动类名。
|
|
|
|
|
driver-class-name: com.mysql.jdbc.Driver
|
|
|
|
|
filters: stat
|
|
|
|
|
# 配置连接池中最大的活跃连接数,即同时可以使用的数据库连接数量上限,当达到这个数量后,新的连接请求会等待空闲连接释放,
|
|
|
|
|
# 合理设置这个值可以避免过多的数据库连接占用过多资源,同时保证应用有足够的连接来处理请求。
|
|
|
|
|
maxActive: 20
|
|
|
|
|
# 初始化时创建的连接数量,在应用启动时会按照这个数量创建初始的数据库连接并放入连接池中备用,
|
|
|
|
|
# 根据应用的预估并发量等情况合理设置初始连接数可以提高应用启动后的数据库访问响应速度。
|
|
|
|
|
initialSize: 1
|
|
|
|
|
# 配置获取连接时的最大等待时间(单位为毫秒),当连接池中没有可用连接时,请求连接的线程会等待一段时间,
|
|
|
|
|
# 如果超过这个时间仍未获取到连接,会抛出异常,避免线程长时间阻塞等待连接。
|
|
|
|
|
maxWait: 60000
|
|
|
|
|
# 连接池中最小的空闲连接数量,连接池会尽量保证空闲连接数不低于这个值,通过动态调整连接的创建和销毁来维持这个空闲连接数,
|
|
|
|
|
# 以便在有新的连接请求时能够快速响应,减少连接创建的开销。
|
|
|
|
|
minIdle: 1
|
|
|
|
|
# 配置每隔多长时间(单位为毫秒)对空闲连接进行一次检测,查看是否有连接超时、失效等情况,
|
|
|
|
|
# 定期检测空闲连接可以及时清理无效的连接,释放资源,保证连接池中的连接质量。
|
|
|
|
|
timeBetweenEvictionRunsMillis: 60000
|
|
|
|
|
# 配置空闲连接的最小可存活时间(单位为毫秒),超过这个时间的空闲连接会被回收,释放资源,
|
|
|
|
|
# 避免长时间闲置的连接占用过多内存等资源,提高资源利用效率。
|
|
|
|
|
minEvictableIdleTimeMillis: 300000
|
|
|
|
|
# 用于验证数据库连接是否有效的查询语句,连接池会定期使用这个语句来测试连接是否可用,
|
|
|
|
|
# 这里简单地使用'select 'x''作为验证语句,根据数据库的不同,也可以使用更合适的验证语句来确保连接正常。
|
|
|
|
|
validationQuery: select 'x'
|
|
|
|
|
# 设置在空闲状态下是否对连接进行测试,若为true,则在连接空闲时会按照配置的验证查询语句(validationQuery)进行测试,
|
|
|
|
|
# 及时发现并回收无效的空闲连接,保证连接的有效性。
|
|
|
|
|
testWhileIdle: true
|
|
|
|
|
# 设置在从连接池获取连接时是否进行测试,若为false,则获取连接时不会执行验证查询语句进行测试,
|
|
|
|
|
# 一般根据实际情况选择是否在获取连接时进行测试,避免不必要的性能开销。
|
|
|
|
|
testOnBorrow: false
|
|
|
|
|
# 设置在归还连接到连接池时是否进行测试,若为false,则归还连接时不会执行验证查询语句进行测试,
|
|
|
|
|
# 同样需要根据具体需求来决定是否开启这个测试,以平衡性能和连接有效性的保障。
|
|
|
|
|
testOnReturn: false
|
|
|
|
|
# 设置是否对预编译语句(Prepared Statements)进行池化管理,开启后可以提高预编译语句的复用率,
|
|
|
|
|
# 减少语句编译的开销,提升数据库访问性能,特别是在频繁执行相同SQL语句的场景下效果更明显。
|
|
|
|
|
poolPreparedStatements: true
|
|
|
|
|
# 配置连接池中最大允许打开的预编译语句数量,限制了预编译语句的资源占用情况,避免过多的预编译语句导致内存等资源耗尽,
|
|
|
|
|
# 根据应用的实际使用情况合理设置这个值可以优化性能和资源利用。
|
|
|
|
|
maxOpenPreparedStatements: 20
|
|
|
|
|
server:
|
|
|
|
|
# 配置当前应用启动后监听的端口号,外部客户端可以通过这个端口来访问应用提供的服务,
|
|
|
|
|
# 根据实际部署和网络环境等情况合理设置端口号,避免端口冲突等问题。
|
|
|
|
|
port: 8088
|
|
|
|
|
logging:
|
|
|
|
|
# 指定日志配置文件的位置,这里使用classpath路径下的logback.xml文件作为日志配置文件,
|
|
|
|
|
# 通过这个文件可以详细配置日志的输出格式、级别、输出目的地等信息,实现灵活的日志管理。
|
|
|
|
|
config: classpath:logback.xml
|
|
|
|
|
mybatis:
|
|
|
|
|
# 指定MyBatis的Mapper XML文件的位置,MyBatis会根据这里配置的路径去扫描并加载对应的Mapper XML文件,
|
|
|
|
|
# 这些文件中定义了数据库操作的SQL语句以及与Java方法的映射关系,用于实现数据持久化操作。
|
|
|
|
|
mapper-locations: classpath:com/njupt/swg/**/**.xml
|
|
|
|
|
# 配置MyBatis的类型别名包路径,在Mapper XML文件中可以使用这些别名来简化实体类的引用,
|
|
|
|
|
# 比如可以直接使用类名(或者自定义的别名)来代替全限定类名,使SQL语句更加简洁易读。
|
|
|
|
|
type-aliases-package: classpath:com.njupt.swg.**.entity
|