什麼是客戶端容器化?

2021-10-19 00:17:07 字數 850 閱讀 6796

容器化架構的願景是:

容器和遠端達成呈現協議,使得端上的內容具備隨時可變化的能力。容器化架構的實現是存在一定前提的,如果業務的發展本身處在乙個探索階段,還有較多可變的因素,是無法形成穩定的能力層的,這時候建設容器化架構反而使得架構偏向複雜。但對於外賣業務場景來說,經過多年的沉澱固定,外賣業務逐漸形成了一套穩定的業務形態,已經進入到場景細分和快速迭代業務模組的階段。在這樣的階段下,容器化架構才有可實施的前提。

當我們把承載業務的環境進行了抽象和標準化後,就可以獲得以下若干點好處。

首先動態化屬性提公升,我們可以把原有必須在客戶端上寫的業務放到了遠端,業務的動態性得到很大的提公升,具備隨時上線業務的可能。對於開發過程而言,編譯部署的速度也得到了極大提公升。如果涉及到客戶端的**改動,那客戶端的編譯打包,即使是增量的編譯,也至少是秒級的編譯速度。而容器化後,我們只打包必要的業務,把業務動態下發到容器呈現,客戶端**本身不會有變化,這樣就可以從秒級的編譯減少到毫秒級的編譯。同樣,業務動態下發,對減少客戶端的包大小也有很大的幫助。

然後,容器位於應用之內,我們向應用中引入相同的容器sdk,容器遮蔽了應用之間的差異,對於android和ios平台,在設計上,通過容器這一層去盡可能遮蔽平台之間的差異,使業務開發人員只需要認識容器,不需要花費大量的精力去關注應用和平台之間的差異,從而使得開發效率得到了極大的提公升。

其次,容器化後,容器對承載的內容是有介面協議要求的,承載的內容只有滿足容器定義的協議才能得到容器帶來的好處,這促使業務得到了更細粒度的細分,業務開發時候,對模組化的意識得到了保障。另外,容器這一層提供的介面在android和ios上是標準化的,業務的開發也因為依賴的標準化,而趨向標準化,雙端的業務一致性得到了提公升。這些潛在的架構好處,對未來的業務維護和擴充套件都打下了比較好的地基。

參考:

什麼是客戶端負載均衡

我們之前有一篇文章詳述了如何使用nginx實現負載均衡 nginx tomcat搭建集群,spring session redis實現session共享 在這篇文章中,我們實現了如何將客戶端發來的請求通過nginx負載均衡伺服器傳送到不同的上游伺服器去處理,這種負載均衡就是一種典型的服務端負載均衡,...

到底什麼是rest客戶端

spring中有個常見的詞叫rest客戶端,常見的rest客戶端我們知道的有 好了,這個所謂的rest客戶端是幹嘛的呢?來自 1 in short,a rest client and arest server areboth connectors.theessential difference be...

瘦客戶端 胖客戶端 智慧型客戶端

胖客戶端模式將應用程式處理分成了兩部分 由使用者的桌面計算機執行的處理和最適合乙個集中的伺服器執行的處理。乙個典型的胖客戶端包含乙個或多個在使用者的pc上執行的應用程式,使用者可以檢視並運算元據 處理一些或所有的業務規則 同時提供乙個豐富的使用者介面做出響應。伺服器負責管理對資料的訪問並負責執行一些...