亚洲男人天堂,国产av无码精选,日韩c逼,豐滿人妻AV一区二区三区四区

app設(shè)計思路想法

2023-10-4 18:37| 發(fā)布者:網(wǎng)賺吧顧問| 查看:143| 評論:0

摘要:  作者:奧爾汗侯賽因利         作為軟件工程師,為什么至少要學(xué)習(xí)基本的架構(gòu)模式?         我相信很多人都回答過這個問題,但我會給你一些思考的理由。         首先,如果你知道建筑模式的 ...

  作者:奧爾汗侯賽因利   

  

  作為軟件工程師,為什么至少要學(xué)習(xí)基本的架構(gòu)模式?   

  

  我相信很多人都回答過這個問題,但我會給你一些思考的理由。   

  

  首先,如果你知道建筑模式的基本知識,你就更容易按照建筑師的要求去做。   

  

  其次,理解這些模式將有助于您在代碼中做出決策:例如,如果您的應(yīng)用程序設(shè)計基于事件驅(qū)動的微服務(wù),那么作為一名軟件工程師,如果您注意到現(xiàn)有服務(wù)中日益增加的復(fù)雜性和邏輯責(zé)任,您必須將代碼解耦到一個單獨的服務(wù)中。   

  

  馬克理查茲在他的書中描述了五種模式:   

  

  分層架構(gòu),事件驅(qū)動架構(gòu)(或微內(nèi)核架構(gòu)),插件架構(gòu),微服務(wù)架構(gòu)(或基于空間的架構(gòu)   

t-darkmode-bdbdbd">)

1.分層架構(gòu)

它是單體應(yīng)用程序最常見的架構(gòu)。該模式背后的基本思想是將應(yīng)用程序邏輯劃分為若干層,每一層都封裝了特定的角色。例如,持久層將負責(zé)您的應(yīng)用程序與數(shù)據(jù)庫引擎的通信。

2.事件驅(qū)動架構(gòu)

這種模式背后的想法是將應(yīng)用程序邏輯解耦為異步接收和處理事件的單一用途事件處理組件。這種模式是流行的分布式異步架構(gòu)模式之一,以高可擴展性和適應(yīng)性著稱。

3. 微內(nèi)核架構(gòu)

Mikrokernel 架構(gòu),也稱為插件架構(gòu),是具有兩個主要組件的設(shè)計模式:核心系統(tǒng)插件模塊(或擴展)。一個很好的例子是Web 瀏覽器(核心系統(tǒng)),您可以在其中安裝無窮無盡的擴展(或插件)。

4. 微服務(wù)架構(gòu)

微服務(wù)架構(gòu)由單獨部署的服務(wù)組成,理想情況下,每個服務(wù)都有單一的職責(zé)。這些服務(wù)相互獨立,如果一項服務(wù)失敗,其他服務(wù)將不會停止運行。

5. 基于空間的架構(gòu)

基于空間的模式背后的主要思想是分布式共享內(nèi)存,以緩解在數(shù)據(jù)庫級別經(jīng)常發(fā)生的問題。假設(shè)通過使用內(nèi)存數(shù)據(jù)處理大多數(shù)操作,我們可以避免數(shù)據(jù)庫中的額外操作,因此可能會從那里演變出任何未來的問題(例如,如果您的用戶活動數(shù)據(jù)實體已更改,您不需要更改一堆持久化的代碼并從數(shù)據(jù)庫中檢索該數(shù)據(jù))。

基本方法是將應(yīng)用程序分成處理單元(可以根據(jù)需要自動擴展和縮減),其中數(shù)據(jù)將在這些單元之間復(fù)制和處理,而無需對中央數(shù)據(jù)庫進行任何持久性(盡管將有本地存儲用于系統(tǒng)故障的場合)。

您可以在他的 GitHub 帳戶中找到其中一些架構(gòu)模式的最簡單示例。這里的鏈接:

  1. 分層模式(Java 中)https://github.com/OrkhanHuseynli/recording-job
  2. Mikrokernel 或插件模式(在 Go 或 Golang 中)https://github.com/OrkhanHuseynli/plugins_design_in_go
  3. 微服務(wù)模式(Go 中)https://github.com/OrkhanHuseynli/microservices_template_golang

鮮花

握手

雷人

路過

雞蛋

最新評論

相關(guān)分類

圖文熱點

熱門推薦

Copyright © 2001-2023 網(wǎng)絡(luò)賺錢平臺網(wǎng) All Rights Reserved.  
Powered by ‘zhuan‘qian‘wang X3.4 
返回頂部 關(guān)注微信 下載APP