談談我對服務化的理解
就目前來說,大部份開發者把一個Dubbo介面,或者一個RPC的呼叫當做服務化來理解,就我個人來說,這是非常不對的一個理解,Dubbo,RPC充其量只能算是一個介面呼叫,離服務化還差著十萬八千里。
那麼我理解的服務化是什麼呢?我理解的有如下幾點:
服務化無關遠端,本地,沒有Dubbo,RPC,也一樣要有服務化。
業務邊界清晰
高內聚,低耦合
服務可複用
就拿很多老程式碼來說,就跟記流水賬一樣,一個servlet或者一個action把所有需要處理的東西都處理完了,這樣同樣的業務邏輯假設在另外一個入口需要的時候,基本上就是把程式碼COPY過去,導致維護起來非常麻煩,當業務需求變動的時候常常需要改動非常多的點,工作量變的非常大,甚至遺漏一些點導致故障。
為了避免這些問題的產生,所以有了服務化的概念,簡單的來說,服務化就是一個SERVICE層,都知道SERVICE其實是分好多層的,有封裝dao層的service(為了一個資料的整體性,比如一對多的資料獲取),還有業務service,其中業務service又因為不同的業務粒度,拆分成更多的service,但是這些service都需要RPC化麼?答案當然是否定的,我們要對外暴露的SERVICE其實是最頂層的SERVICE,將我們底層的SERVICE細節給隱藏起來,並不是所有的service都需要對外暴露的,也不要將所有的細節都暴露給第三方。
那麼有了服務化後有那些好處?
業務入口統一,修改業務的時候就會非常簡單。
服務可擴充套件性強。
剃除冗餘程式碼。
相關文章
- 談談我對服務網格的理解
- 談談我對Spring IOC的理解Spring
- 談一談我對Spring Resource的理解Spring
- 談談我對js中閉包的理解JS
- 談談你對前端效能優化的理解前端優化
- 談談我對物件導向以及類與物件的理解物件
- 談談我對深拷貝和淺拷貝的理解
- 談一談我對‘模板方法’設計模式的理解(Template)設計模式
- 談談你對Promise的理解Promise
- 談談對中斷的理解
- MVC、MVP、MVVM,談談我對Android應用架構的理解MVCMVPMVVMAndroid應用架構
- 談談我對 AIGC 趨勢下軟體工程重塑的理解AIGC軟體工程
- 談談對分散式事務的一點理解和解決方案分散式
- 淺談對標記永久化的理解
- 談一談對vuex的簡單理解Vue
- 談談對MVC、MVP和MVVM的理解?MVCMVPMVVM
- 每日一問:談談對 MeasureSpec 的理解
- 談談我對996.icu的看法996
- 談談對IOC及DI的理解與思考
- 【大廠面試06期】談一談你對Redis持久化的理解?面試Redis持久化
- 面試——談談你對Java 平臺的理解面試Java
- 談一談對vue-router的簡單理解Vue
- Java面試題:請談談對ThreadLocal的理解?Java面試題thread
- 簡單談談服務間的連線
- 【Java 容器面試題】談談你對HashMap 的理解Java面試題HashMap
- 淺談服務的治理
- 入Ali的過去一年,談談我對code-review的理解| 掘金年度徵文View
- 談談元件化-從原始碼到理解元件化原始碼
- 淺談:服務架構進化論架構
- Veeam:談談勒索軟體即服務
- 談談對搜尋技術Elastic Search&Lucene的理解AST
- 【搞定面試官】談談你對JDK中Executor的理解?面試JDK
- 面試——談談你對Java 物件導向思想的理解面試Java物件
- 淺談對java-GC的理解JavaGC
- 談談為什麼需要服務治理(Dubbo)
- GSLB是什麼?談談對該技術的一點理解
- Java開發必讀,談談對Spring IOC與AOP的理解JavaSpring
- 第 15 題:談談你對迴流和重繪的理解?