通用配置

本章节内容所有服务都需要配置的环境属性;

#-后定义的bean会覆盖之前定义的相同名称的bean
spring.main.allow-bean-definition-overriding=true
#-jackson格式化日期格式
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
#-jackson格式化市区
spring.jackson.time-zone=GMT+8
#-国际化默认语言
spring.messages.default-locale=en_US
#-国际化切换变量名
spring.messages.locale-change-param-name=lang
#-配置国际化文件路径
spring.messages.basename=i18n/messages
#-国际化信息缓存时间,单位秒
spring.messages.cache-seconds=3600
#-国际化信息编码
spring.messages.encoding=UTF-8
# 最大支持文件大小
spring.http.multipart.max-file-size=100MB 
# 最大支持请求大小
spring.http.multipart.max-request-size=100MB 
##spring boot用于设置上传文件大小--MultipartProperties.class
# 最大支持文件大小
spring.servlet.multipart.max-file-size=100MB 
# 最大支持请求大小
spring.servlet.multipart.max-request-size=100MB 
#-security配置用户
spring.security.user.name=iform
#-security配置密码
spring.security.user.password=iform@123
# Undertow 配置
#-是否启动日志
server.undertow.accesslog.enabled=false
# 日志存放目录
server.undertow.accesslog.dir=/tmp/undertow
# 日志格式
server.undertow.accesslog.pattern=common
# 日志文件名前缀
server.undertow.accesslog.prefix=access_log
# 日志文件名后缀
server.undertow.accesslog.suffix=log
# HTTP POST请求最大的大小
server.undertow.accesslog.max-http-post-size=0
# 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
server.undertow.accesslog.io-threads=4
# 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
server.undertow.accesslog.worker-threads=20
# 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理,每块buffer的空间大小,越小的空间被利用越充分
server.undertow.accesslog.buffer-size=1024
# 每个区分配的buffer数量 , 所以pool的大小是buffer-size * buffers-per-region
server.undertow.accesslog.buffers-per-region=1024
# 是否分配的直接内存
server.undertow.accesslog.direct-buffers=true
#-应用ID
app.id=
#-应用版本
app.version=
#-权重配置(对象,host、weight),优先访问那些主机的服务
app.weights

#-是否开启基本的鉴权,默认为true
security.basic.enabled=false
#-actuator暴露接口使用的端口,为了和api接口使用的端口进行分离
management.port=8099
#-actuator是否需要安全保证
management.security.enabled=false
#-设置管理端点的基本路径
management.endpoints.web.base-path=/
#-默认只公开了/health和/info端点,要想暴露所有端点只需设置成星号即可
management.endpoints.web.exposure.include='*'
#-是否启动endpoint,默认true
management.endpoint.health.enabled=true
#-展示健康检查详情的时间,never/when_authorized/always
management.endpoint.health.show-details=always
#-是否启动endpoint,默认true
management.endpoint.env.enabled=true
#-是否启动endpoint,默认true
management.endpoint.mappings.enabled=false
#-是否启动邮件健康检查
management.health.mail.enabled=false
#-是否启动redis健康检查
management.health.redis.enabled=false
#-是否启动RabbitMQ健康检查
management.health.rabbit.enabled=false
#-是否启动MongoDB健康检查
management.health.mongo.enabled=false
#-日志配置
logging.config=classpath:config/log4j2.yml
#-收件人
mail.notify-to=
#-邮箱服务器地址和用户信息
mail.host=smtp.163.com
mail.mail-address=abc@163.com
mail.from-address=
mail.username=ak
mail.password=123
## 端口号 如果启用 163用465/994
mail.port=465
mail.default-encoding=utf-8
## 尝试使用AUTH命令认证用户
mail.smtp.auth=true
mail.smtp.ssl.enable=true
mail.smtp.starttls.enable=false
## 服务协议
mail.transport.protocol=smtps
#-apollo服务地址
apollo.meta=http://192.168.3.220:8080
#-是否启动apollo
apollo.bootstrap.enabled=false
#-rabbitmq配置
#-rabbitmq地址
spring.rabbitmq.host=192.168.3.210
#-rabbitmq端口
spring.rabbitmq.port=5672
#-rabbitmq用户名
spring.rabbitmq.username=iform
#-rabbitmq密码
spring.rabbitmq.password=iform@123
#-rabbitmq工作区域
spring.rabbitmq.virtual-host=/
#-kafka配置
#-指定kafka 代理地址,可以多个
spring.kafka.bootstrap-servers=
#-如果该值大于零时,表示启用重试失败的发送次数
spring.kafka.producer.retries=0
#-每当多个记录被发送到同一分区时,生产者将尝试将记录一起批量处理为更少的请求, 
#-这有助于提升客户端和服务器上的性能,此配置控制默认批量大小(以字节为单位),默认值为16384
spring.kafka.producer.batch-size=16384
#-生产者可用于缓冲等待发送到服务器的记录的内存总字节数,默认值为33554432
spring.kafka.producer.buffer-memory=33554432
#-key的Serializer类,实现类实现了接口org.apache.kafka.common.serialization.Serializer
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
#-值的Serializer类,实现类实现了接口org.apache.kafka.common.serialization.Serializer
spring.kafka.producer.value-serializer=com.ak.iform.cloud.mq.core.kafka.serializer.JacksonSerializer
#-以下配置为kafka认证相关,若未开启认证,请注释相关配置
#-SCRAM 认证机制,并启用 SHA-256 算法
spring.kafka.producer.properties.sasl.mechanism=SCRAM-SHA-256
#-表示 Broker 间通信不配置 SSL
spring.kafka.producer.properties.security.protocol=SASL_PLAINTEXT
#-认证参数配置
spring.kafka.producer.properties.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="admin" password="admin";
#-消费者读取数据策略
spring.kafka.consumer.auto-offset-reset=earliest
#-消费者偏移自动提交
spring.kafka.consumer.enable-auto-commit=true
#-消费者偏移自动提交给Kafka的频率
spring.kafka.consumer.auto-commit-interval=100
#-密钥的反序列化器类,实现类实现了接口org.apache.kafka.common.serialization.Deserializer
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer
#-值的反序列化器类,实现类实现了接口org.apache.kafka.common.serialization.Deserializer
spring.kafka.consumer.value-deserializer=com.ak.iform.cloud.mq.core.kafka.serializer.JacksonSerializer
#-以下配置为kafka认证相关,若未开启认证,请注释相关配置
#-表明开启 SCRAM 认证机制,并启用 SHA-256 算法
spring.kafka.consumer.properties.sasl.mechanism=SCRAM-SHA-256
#-表示 Broker 间通信不配置 SSL
spring.kafka.consumer.properties.security.protocol=SASL_PLAINTEXT
#-认证参数配置
spring.kafka.consumer.properties.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="admin" password="admin";
#-Redis配置
#-Redis服务器地址
spring.redis.host=127.0.0.1
#-Redis服务器连接端口
spring.redis.port=6379
#-Redis服务器连接密码(默认为空)
spring.redis.password=
#-Redis数据库索引(默认为0)
spring.redis.database=0
#-是否启用SSL连接
spring.redis.ssl=false
#-连接超时,毫秒为单位
spring.redis.timeout=3000


#-连接池最大等待时间
spring.redis.lettuce.pool.max-wait=3000
#-连接池最大连接数(使用负值表示没有限制)
spring.redis.lettuce.pool.max-active=10
#-连接池中的最大空闲连接
spring.redis.lettuce.pool.max-idle=3
#-连接池中的最小空闲连接
spring.redis.lettuce.pool.min-idle=1
#-集群模式下,逗号分隔的键值对(主机:端口)形式的服务器列表
spring.redis.cluster.nodes=
#-哨兵模式下,Redis主服务器地址
spring.redis.sentinel.master=
#-哨兵模式下,逗号分隔的键值对(主机:端口)形式的服务器列表
spring.redis.sentinel.nodes=
#-正确、安全地停止SpringBoot应用服务配置
#-启用shutdown
endpoints.shutdown.enabled=false
#-禁用安全验证
endpoints.shutdown.sensitive=false
#-监控相关
#-磁盘信息输出开关,true/false
aop.sigar.open=false
#-jvm信息数据开关,true/false
aop.jvm.open=true
#-请求的时间消耗输出,true/false
aop.stopwatch.open=true
#-是否开启权限校验
authorization.enable=true
#-是否开启权限过滤器
authorization.permission-filter-enable=true
#-Consul 默认空间
consul.serviceUrl.defaultZone=http://127.0.0.1:8500
#-Consul 服务器注册地址
spring.cloud.consul.host=127.0.0.1
#-Consul 服务器注册端口
spring.cloud.consul.port=8500
#-Consul 服务健康检查地址
spring.cloud.consul.discovery.health-check-path=/health
#-Consul 服务健康检查间隔
spring.cloud.consul.discovery.health-check-interval=20s
#-Consul 实例id
spring.cloud.consul.discovery.instance-id=
#-Consul 客户端实例地址
spring.cloud.consul.discovery.hostname=192.168.1.1
#-Consul 客户端实例端口
spring.cloud.consul.discovery.port=8500
# org.springframework.cloud.consul.discovery.ConsulDiscoveryProperties.defaultZoneMetadataName
#-Consul 默认允许切换的标签名
spring.cloud.consul.discovery.defaultZoneMetadataName=dev
#-Consul 标签(数组)
spring.cloud.consul.discovery.tags=
#-Feign设置
#-Feign建立连接后读取资源超时时间
feign.options.readTimeout=60000
#-Feign建立连接超时时间
feign.options.connectTimeout=30000
#-Feign是否启用httpclient
feign.httpclient.enabled=false
#-Feign是否启用okhttp
feign.okhttp.enabled=true
#-Feign是否启用hystrix
feign.hystrix.enabled=true

#-Hystrix熔断设置,default是服务名,填写default为所有服务都生效,可以添加或改为其他服务名
#-此属性允许maximumSize的配置生效
hystrix.threadpool.default.allowMaximumSizeToDivergeFromCoreSize=true
#-线程池coreSize
hystrix.threadpool.default.coreSize=128
#-此属性设置最大线程池大小
hystrix.threadpool.default.maximumSize=256
#-熔断触发的最小个数/10s
hystrix.command.default.circuitBreaker.requestVolumeThreshold=1000
#-熔断多少秒后去尝试请求
hystrix.command.default.circuitBreaker.sleepWindowInMilliseconds=5000
#-失败率达到多少百分比后熔断
hystrix.command.default.circuitBreaker.errorThresholdPercentage=50
#-设置在使用时允许到HystrixCommand.run()方法的最大请求数
hystrix.command.default.fallback.isolation.semaphore.maxConcurrentRequests=100
#-HystrixCommand.run()执行是否应该有超时
hystrix.command.default.execution.timeout.enabled=true
#-超时时间(默认1000ms,单位:ms) 优先级低于指定服务配置
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=60000
#-Ribbon 总时间ribbonTimeout = (ribbonReadTimeout + ribbonConnectTimeout) * (maxAutoRetries + 1) * (maxAutoRetriesNextServer + 1);    
#-ribbon全局设置
#-会影响eureka注册时负载,使用eureka注册时必须设置true
ribbon.eureka.enabled=true
#-是否启动httpclient
ribbon.httpclient.enabled=false
#-是否启动okhttp
ribbon.okhttp.enabled=true
#-请求处理的超时时间
ribbon.ReadTimeout=15000
#-请求连接的超时时间
ribbon.ConnectTimeout=15000
#-对当前实例的重试次数
ribbon.MaxAutoRetries=0
#-切换实例的重试次数
ribbon.MaxAutoRetriesNextServer=1
#-对所有操作请求都进行重试
ribbon.OkToRetryOnAllOperations=false
#-开启Ribbon的饥饿加载模式
ribbon.eager-load.enabled=true
#-指定需要饥饿加载的服务名,数组
ribbon.eager-load.clients=
#-是否验证权限
authorization.enable=true
#-不验证权限时使用的账号
authorization.default-username=iform
#-不验证权限时使用的密码
authorization.default-password=iform

#- 匿名调用密钥key
authorization.secrect.key.anonymous=
#- 内部调用密钥key
authorization.secrect.key.inner=
#- 匿名调用密钥值
authorization.secrect.value.anonymous=
#- 内部调用密钥值
authorization.secrect.value.inner=
作者:hugh  创建时间:2024-01-03 13:52
最后编辑:hugh  更新时间:2024-11-15 11:25