application.yml 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. server:
  2. port: 6000
  3. spring:
  4. application:
  5. name: gateway
  6. profiles:
  7. active: @profile.active@
  8. cloud:
  9. loadbalancer:
  10. ribbon:
  11. enabled: false
  12. gateway:
  13. # 默认过滤器(对所有 route 均生效)
  14. default-filters:
  15. # 限流配置
  16. - name: MyRequestRateLimiter
  17. args:
  18. # 如果 keyResolver 返回空 key 则拒绝请求返回 403, 默认 true 表示拒绝, false 表示允许访问
  19. deny-empty-key: false
  20. # 自定义的 KeyResolver(从请求 exchange 解析 id 来区分独立的限流单元, id 可以是 userId, remoteAddr, sessionId 等)
  21. key-resolver: "#{@keyResolver}"
  22. # rate-limiter: "#{@myRateLimiter}"
  23. # my-rate-limiter.requestedTokens: 1
  24. rate-limiter: "#{@redisRateLimiter}"
  25. # 令牌桶算法每秒补充的 token 数量(每秒的请求数量)
  26. redis-rate-limiter.replenishRate: 100
  27. # 令牌桶算法的 token 最大数量(每秒的最大请求数量)
  28. redis-rate-limiter.burstCapacity: 150
  29. # 单次请求消费的 token 数量
  30. redis-rate-limiter.requestedTokens: 1
  31. routes:
  32. - id: account-router
  33. # spring-cloud-starter-zookeeper-discovery 提供服务发现功能
  34. uri: lb://account-service
  35. predicates:
  36. - Path=/api/account/**
  37. filters:
  38. - StripPrefix=0
  39. - id: static-router
  40. uri: lb://account-service
  41. predicates:
  42. - Path=/dist/images/**
  43. filters:
  44. - StripPrefix=0
  45. - id: auth-router
  46. uri: lb://account-service
  47. predicates:
  48. - Path=/api/auth/**
  49. filters:
  50. - StripPrefix=0
  51. - id: oauth-router
  52. uri: lb://account-service
  53. predicates:
  54. - Path=/oauth/**
  55. filters:
  56. - StripPrefix=0
  57. - id: account-admin-router
  58. uri: lb://account-service
  59. predicates:
  60. - Path=/api/admin/account/**
  61. filters:
  62. - StripPrefix=0
  63. ###############################################################################
  64. - id: user-router
  65. uri: lb://user-service
  66. predicates:
  67. - Path=/api/user/**
  68. filters:
  69. - StripPrefix=0
  70. - id: user-admin-router
  71. uri: lb://user-service
  72. predicates:
  73. - Path=/api/admin/user/**
  74. filters:
  75. - StripPrefix=0
  76. ###############################################################################
  77. - id: content-router
  78. uri: lb://content-service
  79. predicates:
  80. - Path=/api/content/**
  81. filters:
  82. - StripPrefix=0
  83. - id: content-admin-router
  84. uri: lb://content-service
  85. predicates:
  86. - Path=/api/admin/content/**
  87. filters:
  88. - StripPrefix=0
  89. - id: timeline-router
  90. uri: lb://content-service
  91. predicates:
  92. - Path=/api/timeline/**
  93. filters:
  94. - StripPrefix=0
  95. - id: search-router
  96. uri: lb://content-service
  97. predicates:
  98. - Path=/api/search/**
  99. filters:
  100. - StripPrefix=0
  101. - id: mall-router
  102. uri: lb://content-service
  103. predicates:
  104. - Path=/api/mall/**
  105. filters:
  106. - StripPrefix=0
  107. - id: geo-router
  108. uri: lb://content-service
  109. predicates:
  110. - Path=/api/geo/**
  111. filters:
  112. - StripPrefix=0
  113. - id: im-router
  114. uri: lb://content-service
  115. predicates:
  116. - Path=/api/chat/**
  117. filters:
  118. - StripPrefix=0
  119. ###############################################################################
  120. - id: data-router
  121. uri: lb://data-service
  122. #uri: http://192.168.0.39:6005
  123. predicates:
  124. - Path=/api/data/**
  125. filters:
  126. - StripPrefix=0
  127. ###############################################################################
  128. - id: file-router
  129. uri: lb://file-service
  130. predicates:
  131. - Path=/api/file/**
  132. filters:
  133. - StripPrefix=0
  134. - id: file1-router
  135. uri: lb://file-service
  136. predicates:
  137. - Path=/file/**
  138. filters:
  139. - StripPrefix=0
  140. - id: disk-router
  141. uri: lb://file-service
  142. predicates:
  143. - Path=/api/disk/**
  144. filters:
  145. - StripPrefix=0
  146. - id: file-admin-router
  147. uri: lb://file-service
  148. predicates:
  149. - Path=/api/admin/file/**
  150. filters:
  151. - StripPrefix=0
  152. - id: oss-router
  153. uri: lb://file-service
  154. predicates:
  155. - Path=/api/oss/**
  156. filters:
  157. - StripPrefix=0
  158. ###############################################################################
  159. - id: message-websocket
  160. uri: lb:ws://message-service
  161. predicates:
  162. - Path=/ws/**
  163. - id: message-router
  164. uri: lb://message-service
  165. predicates:
  166. - Path=/api/message/**
  167. - id: message-admin-router
  168. uri: lb://message-service
  169. predicates:
  170. - Path=/api/admin/message/**
  171. - id: tnb-admin-router
  172. uri: lb://message-service
  173. predicates:
  174. - Path=/api/admin/tnb/**
  175. filters:
  176. - StripPrefix=0
  177. ###############################################################################
  178. - id: log-websocket
  179. uri: lb:ws://search-service
  180. predicates:
  181. - Path=/logws/**
  182. - id: search1-router
  183. uri: lb://search-service
  184. predicates:
  185. - Path=/api/search1/**
  186. - id: blog-router
  187. uri: lb://search-service
  188. predicates:
  189. - Path=/api/blog/**
  190. - id: comment-router
  191. uri: lb://search-service
  192. predicates:
  193. - Path=/api/comment/**
  194. filters:
  195. - StripPrefix=0
  196. # gateway:
  197. # globalcors:
  198. # cors-configurations:
  199. # '[/**]':
  200. # allowedOrigins: "*"
  201. # allowedMethods: "*"
  202. # allowedHeaders: "*"
  203. eureka:
  204. instance:
  205. prefer-ip-address: true
  206. client:
  207. register-with-eureka: true
  208. fetch-registry: true
  209. app:
  210. resources:
  211. _api_admin_: role_tnb_admin
  212. _api_oss_: role_tnb_admin
  213. _api_blog_bg_: role_tnb_admin
  214. _api_disk_: role_tnb_disk