關於springboot開發的總結

2022-07-02 05:54:10 字數 1306 閱讀 6460

主要針對新的專案

1 - 開始不要著急搞微服務,分布式,無疑會加大開發成本,拖慢開發速度,除非團隊有基礎,水平很高.

2 - 可以按照微服務的架子進行專案開發管理,比如拆分出使用者管理模組,裝置模組,某某應用模組等等,url統一字首,建立各自的service,utils,source等等,資料庫根據業務區分字首,便於後期拆分服務.

3 - 使用統一的時間庫,json庫

4 - 資料庫存時間戳或utc時間,前端根據時區處理,解決時區問題

5 - 後端返回前端格式統一,一律用狀態碼進行提示,這樣多語言就可以放在前端處理了,而不用兩端同時處理

6 - 不要在controller中寫業務邏輯,只進行引數驗證,邏輯寫在service裡,便於重用

7 - 引數驗證前後端要統一正規表示式,要單獨建立乙個utils,統一管理引數驗證

8 - 一邊開發,一邊重構,一旦某段**複製了3次就重構之前的**

9 - 乙個方法只做一件事,乙個類只做一種事,乙個服務只做一類事

10 - 使用lambok優化pojo類是個不錯的選擇

11 - 資料庫表名統一以下劃線方式,類,屬性,方法用駝峰方式,常量全大寫

12 - 統一處理異常,統一驗證許可權,不要放到各個介面中,使用aop

13 - 開發時,經常使用git分支,可以有效提高開發,運維和測試的工作效率

14 - 盡可能不要聯調測試,可以用doker部署下,讓測試人員連docker

15 - 寫了service,心虛的那種,可以先在test中自己測試下,這樣可以縮小問題的範圍

16 - 不用太多注釋,盡可能用合理的方法名說明要做什麼事,保持**簡潔

17 - **沒寫完,下班了,一定寫乙個todo,可以減少第二天回憶的時間

18 - 如果使用者多了,撐不住了,可以先考慮垂直擴充套件,畢竟使用者多了也就有錢了,增加裝置配置會省不少事

19 - 如果還撐不住,就搞個負載均衡,nacos?dubbo?nginx?如果流量削峰,rocketmq?

20 - 如果資料庫扛不住了,先考慮把大的字段拆到別的表,還不行,就分庫,分庫,加配置也撐不住了,那就分表吧,水平拆分shardingphere,leaf...

21 - 這個時候就可以考慮拆分服務了,所有的業務應該都差不多清晰了,康威定律,按照公司的架構模式拆分估計也差不多了

22 - 這個時候可以使用springcloudalibaba那一套方案

23 - 逐漸演變成k8s + istio服務網格,資料庫遷移到tidb

以上也是在開發過程中,查詢資料,學習了解到的.

實際專案沒有真的走到微服務那一步,也許以後會用到,記錄一下,目前專案也只是增加了裝置配置...

關於springboot的logback的配置

1 pom檔案引入jar包 dependency groupid org.springframework.boot groupid artifactid spring boot starter logging artifactid version 1.5.2.release version depe...

Springboot開發之我見

現在越來越多的人關注微服務,要求提公升開發效率,我從17年9月起開始使用springboot框架,在專案過程中聊聊我的心得體會 1 強大的註解模式 幾乎不需要配置檔案,yml的配置檔案看起來體驗比properties要清晰明了 2 main啟動 springboot內建了tomcat引擎,jar包直...

基於SpringBoot開發

使用idea配置springboot專案 專案結構 而 configuration 經常與 bean 組合使用,使用這兩個註解就可以建立乙個簡單的spring 配置類,可以用來替代相應的xml 配置檔案。enableautocon figuration 能夠自動配置spring 的上下文,猜測和配置...