當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringCloud常见问题总结(二)
生活随笔
收集整理的這篇文章主要介紹了
SpringCloud常见问题总结(二)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Spring Cloud各組件屬性配置
- SpringCloud中的大部分問題可以使用配置屬性來規避,
Spring Cloud的配置
- Spring Cloud的所有組件配置都在其官方文檔的附錄中
- Spring Cloud 整合了很多類庫,例如Eureka, Ribbon, Feign等,這些組件自身也有一些配置屬性,如下:
- Eureka配置:https://github.com/Netflix/eureka/wiki/Configuring-Eureka
- Ribbon配置:https://github.com/Netflix/ribbon/wiki/Programmers-Guide
- Hystrix配置:https://github.com/Netflix/Hystrix/wiki/Configuration
- Turbine配置:https://github.com/Netflix/Turbine/wiki/Configuration
Spring Cloud 常見問題總結
-
Spring Cloud在Camden版本之后就比較穩定,一般來說,問題都不是Spring cloud的bug,因此在之前開發過程中遇到的一些問題,我會排查如下幾個地方
-
第一排查配置問題,如下幾個案例
- YAML縮進是否正確: 因為縮進導致Spring Cloud應用無法正常啟動,或者配置無法正常加載。這種問題可能因為手誤造成,盡量先導入JAR通過IDE的自動提示讓IDE自己生成對應的配置項,這樣可以避免自己輸入時候的縮進已經拼寫問題。
- 配置屬性是否正確:配置屬性的寫錯也是一個非常常見的問題。盡管該問題很低級,但是我相信也是很容易犯錯的,因為YAML文件編輯的是吧不想IDE中代碼會有編譯器自動識別是否正確,往往我們并不能立刻找到錯誤
- 配置屬性的位置是否正確:配置屬性位置不正確可能導致應用的不正常。比如
- 應當配在Eureka Client項目上的屬性,配置在了Eureka Server項目想。
- 應當寫在bootstra.yml中的屬性,寫在了application.yml中比如:spring.cloud.config.uri:http://localhost:8080
- 應當寫在application.yml中的熟悉寫在了bootstrap.yml中比如:eureka.client.healthcheck.enabled=true
-
第二排查環境問題,如下案例:
- 環境變量:例如java環境變量,Maven環境變量,Docker容器環境變量等,當引用無法正常工作時,應該確保環境變量配置正確
- 依賴下載是否完整:利用mvn clean package,包問題也是比較棘手的,特別是有墻的情況
- 網絡問題:微服務直接通過網絡保持通訊,因此網絡經常是排查問題的關鍵。當問題發生時候,可以先排查網絡問題。
-
第三代碼問題:
- 以上排查后都沒問題那很可能代碼有問題,例如少注解,缺依賴,這都會導致各種異常,合理設置開發日志級別可以很好的定位問題。
-
排查Spring Cloud自身問題
- 如果確定不是自己問題,我們可以通過DebugSpring Cloud的代碼,看是不是框架的bug,給gitHub等平臺的Spring Cloud項目組提交issue,然后參考官方恢復,嘗試規避相應問題。
上一篇 SpringCloud常見問題總結(一)
總結
以上是生活随笔為你收集整理的SpringCloud常见问题总结(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蜂蜜的热量是多少
- 下一篇: SpringCloud + Docker