spring-cloud-gateway网关设计最强实践(附完整代码)
微信號:hbhk1314
?
一、gateway的常用功能實現
1、動態路由添加(自動或手動)(已支持數據庫配置管理功能)
自動:根據注冊獲取添加
手動:根據spring-cloud-gateway 提供刷新接口:
org.springframework.cloud.gateway.event.RefreshRoutesEvent.RefreshRoutesEvent
2、服務治理(降級、限流、隔離、熔斷)(已支持數據庫配置管理功能)
降級:提供降級配置、提供服務的啟用和關閉,使用GlobalFilter攔截。
限流:提供限流配置、使用guava RateLimiter實現單機信號量限流。
隔離:提供隔離配置、使用GlobalFilter攔截,進入前設置信號量、完成時釋放信號量
熔斷:提供隔離配置、使用GlobalFilter攔截,發生異常時,記錄異常次數,到達次數開啟熔
斷,進入半開。之后根據配置時間,進入嘗試,成功開啟、失敗后續繼續重試
?
3、網關統一異常處理
實現org.springframework.boot.web.reactive.error.ErrorWebExceptionHandler統一封裝返回格
式。
?
二、高性能網關設計
a、網關核心系統必須是無狀態的、便于擴展
b、運行時本地存儲,盡量在內存里面完成服務的處理和路由
c、減少對線程的依賴,采用非阻塞IO和異步事件響應機制
d、網關必須要自己的超時策略、不要依賴服務的超時時間
e、servlet 3 異步,netty 多路復用、netty work線程與業務線程分離
?
三、網關使用:
a、執行腳本
b、啟動:org.hbhk.hxl.gateway.GatewayApplication
c、代碼地址:https://gitee.com/hbhk/hxl-gateway
?
?
總結
以上是生活随笔為你收集整理的spring-cloud-gateway网关设计最强实践(附完整代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 同花顺指标公式FD极品底提示买卖点 副图
- 下一篇: 欧姆龙温控器参数笔记(五)(高级功能设定