yml mysql参数_application.yml中常用参数设置

本文详细介绍了YML配置文件在微服务中的应用,包括MySQL数据库连接参数,Eureka服务发现配置,RabbitMQ连接,以及Spring Cloud Gateway的路由和过滤器设置。还提及了Hystrix熔断器的配置策略。
摘要由CSDN通过智能技术生成

一、服务中的application.yml

server:

port: 9004

spring:

application:

name: business

datasource:

driver-class-name: com.mysql.jdbc.Driver

url: jdbc:mysql://192.168.200.128:3306/changgou_business?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC

username: root

password: root

main:

allow-bean-definition-overriding: true #当遇到同样名字的时候,是否允许覆盖注册

rabbitmq: #添加rabbit,连接到它的虚拟机

host: 192.168.200.128

eureka:

client:

service-url:

defaultZone: http://127.0.0.1:6868/eureka

instance:

prefer-ip-address: true

feign:

hystrix:

enabled: true

client:

config:

default: #配置全局的feign的调用超时时间 如果 有指定的服务配置 默认的配置不会生效

connectTimeout: 60000 # 指定的是 消费者 连接服务提供者的连接超时时间 是否能连接 单位是毫秒

readTimeout: 20000 # 指定的是调用服务提供者的 服务 的超时时间() 单位是毫秒

#hystrix 配置

hystrix:

command:

default:

execution:

timeout:

#如果enabled设置为false,则请求超时交给ribbon控制

enabled: true

isolation:

strategy: SEMAPHORE

thread:

# 熔断器超时时间,默认:1000/毫秒

timeoutInMilliseconds: 20000

1、Thread和Semaphore的区别?

Thread:这是比较常用的隔离策略,即根据配置把不同的命令分配到不同的线程池中,该策略的优点是隔离性好,并且可以配置断路,某个依赖被设置断路之后,系统不会再尝试新起线程运行它,而是直接提示失败,或返回fallback值;缺点是新起线程执行命令,在执行的时候必然涉及到上下文的切换,这会造成一定的性能消耗,但是Netflix做过实验,这种消耗对比其带来的价值是完全可以接受的。

Semaphore:开发者可以限制系统对某一个依赖的最高并发数。这个基本上就是一个限流的策略。每次调用依赖时都会检查一下是否到达信号量的限制值,

二、Eureka中的application.yml

server:

port: 6868 # 微服务端口号

eureka:

client:

register-with-eureka: false #是否将自己注册到eureka中。自己不提供服务,不注册。若是集群,则注册。

fetch-registry: false #是否从eureka中获取信息

service-url: defaultZone: http://127.0.0.1:${server.port}/eureka/ # EurekaServer的地址,自己的地址;如果是集群,需要写其它Server的地址。

三、gateway中的appliction.yml

1 spring: #使用spring框架2 application:3 name: sysgateway4 cloud: #使用springcloud微服务框架5 gateway:6 globalcors: #全局配置7 cors-configurations:8 '[/**]': # 匹配所有请求9 allowedOrigins: "*"#跨域处理 允许所有的域10 allowedMethods: # 支持的方法11 -GET12 -POST13 -PUT14 -DELETE15 routes:16 # 路由id,可以随意写17 -id: goods18 # 代理的服务地址19 uri: lb://goods

20 # 路由断言,可以配置映射路径21 predicates:22 - Path=/goods/**

23 # 过滤器24 filters:25 - StripPrefix= 126 - name: RequestRateLimiter #请求数限流 名字不能随便写27 args:28 key-resolver: "#{@ipKeyResolver}"29 redis-rate-limiter.replenishRate: 1 #令牌桶每秒填充平均速率30 redis-rate-limiter.burstCapacity: 1 #令牌桶总容量31 - id: system32 uri: lb://system33 predicates:34 - Path=/system/**35 filters:36 # 表示过滤1个路径,2表示两个路径,以此类推37 - StripPrefix= 138 redis:39 host: 192.168.200.12840 server:41 port: 910142 eureka: # 在gateway中注册Eureka43 client:44 service-url:45 defaultZone:http://127.0.0.1:6868/eureka46 instance:47 prefer-ip-address: true

spring:

application:

name: gateway-web

cloud:

gateway:

globalcors:

cors-configurations:

'[/**]': # 匹配所有请求

allowedOrigins: "*" #跨域处理 允许所有的域

allowedMethods: # 支持的方法

- GET

- POST

- PUT

- DELETE

routes:

- id: changgou_goods_route

uri: lb://goods

predicates:

- Path=/api/album/**,/api/brand/**,/api/cache/**,/api/categoryBrand/**,/api/category/**,/api/para/**,/api/pref/**,/api/sku/**,/api/spec/**,/api/spu/**,/api/stockBack/**,/api/template/**

filters:

#- PrefixPath=/brand

- StripPrefix=1

#用户微服务

- id: changgou_user_route

uri: lb://user

predicates:

- Path=/api/user/**,/api/address/**,/api/areas/**,/api/cities/**,/api/provinces/**

filters:

- StripPrefix=1

#认证微服务

- id: changgou_oauth_user

uri: lb://user-auth

predicates:

- Path=/api/oauth/**

filters:

- StripPrefix=1

#订单微服务

- id: changgou_order_route

uri: lb://order

predicates:

- Path=/api/cart/**,/api/categoryReport/**,/api/orderConfig/**,/api/order/**,/api/orderItem/**,/api/orderLog/**,/api/preferential/**,/api/returnCause/**,/api/returnOrder/**,/api/returnOrderItem/**

filters:

- StripPrefix=1

#购物车订单渲染微服务

- id: changgou_order_web_route

uri: lb://order-web

predicates:

- Path=/api/wcart/**,/api/worder/**,/api/wxpay/**

filters:

- StripPrefix=1

#秒杀渲染微服务

- id: changgou_seckill_web_route

uri: lb://seckill-web

predicates:

- Path=/api/wseckillgoods/**,/api/wseckillorder/**

filters:

- StripPrefix=1

redis:

host: 192.168.200.128

server:

port: 8001

eureka:

client:

service-url:

defaultZone: http://127.0.0.1:6868/eureka

instance:

prefer-ip-address: true

management:

endpoint:

gateway:

enabled: true

web:

exposure:

include: true

四、 Spring Cloud 体系技术综合应用概览

ac68538a3cba88e670872ce0ce7a3b3e.png

Spring Cloud 5大组件

Eureka注册中心--------->管理微服务地址和状态信息

Feign---------->微服务之间远程调用;(封装RestTemplate Ribbon)

Gateway------->微服务统一入口。(路由+过滤器)

Config-------->管理微服务配置文件

Hystrix------->熔断器,防止系统雪崩

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值