為什麼要對架構進行升級?
最新
01-17
給一個非技術型公司的領導彙報工作,聊到對未來的規劃時,提到一段時間內要對系統重構,進行架構升級。「不是已經做好了么,幹嗎還要變更?」,哈,老闆又要花錢了。
那麼為什麼要對架構進行升級?
首先說說架構是什麼?
我認為架構是對事務生命周期不同工作的分工,並把這些分工連接並管理起來的一種結構。無論是物理世界的社會結構、公司組織形態,還是軟體系統分層、微服務,甚至一個對象、一個方法都是一種不同的分工,在一定範圍中,都是架構的一部分。架構的設計,本質上是對「分離」兩個字的把控,分離的粒度和合理性決定了架構的優劣。
回顧人類的歷史長河,社會分工是逐漸演化而來的,石器時代社會組織與現在肯定也不一樣。軟體系統架構同樣如此,需要逐漸演化升級,升級的理由只有兩個:
1.不以業務量為前提的架構設計都是扯淡
也許你聽過相似的這句話了。架構一定是以業務量為前提的,業務量增長的同時,系統將面對更複雜的業務、更高的性能要求、更快捷的開發效率、更可靠的系統建設,架構要適應業務量,業務量的增長導致系統架構的演進。
一個業務量走勢的例子
如上圖,15年與17年系統面向的用戶數量、整體數據量都是指數性的增長,面對的問題不一樣的,面對的業務需求也不一樣,系統架構肯定也是完全不同的。
2.組織結構調整
公司合了、拆了、團隊重新劃分了,這些都是組織架構調整,組織結構的分分合合不是僅僅工商註冊變更那麼簡單,軟體系統架構需要與組織結構的調整相適應,反過來,組織結構也可能根據軟體系統架構,需要進行重新劃分。
總結
架構是否需要升級只與下面兩點有關:
1.業務量的現狀與未來預測,不以業務量為前提的架構設計都是扯淡;
2.組織架構調整。
歡迎吐槽~


TAG:全球大搜羅 |