日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

软考·系统架构师论文——论软件的高并发设计

發布時間:2024/3/13 windows 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软考·系统架构师论文——论软件的高并发设计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 說明
  • 摘要
  • 過渡
  • 項目背景
  • 論點理論
  • 論點實踐
  • 結尾

說明

1、【摘要 300~330字】
① 項目介紹:時間、項目名、項目主要功能簡述、作者角色及工作內容
② 項目技術簡介:正文理論/分論點的濃縮和精華,注意行文格式
③ 項目效果:簡述上線效果
2、【項目背景 400~600字】
① 引言:項目由來/緣起/定位/目標,主要介紹項目的前提和誕生的背景,注意戴帽子要適可而止
② 項目主要內容:簡要介紹,不是摘要中簡單的重復,應比摘要稍詳細,注意5W2h的次序可根據行文而定
when:何時,近三年項目(體現技術先進性),工期建議半年至1年
where:何地,脫敏,某省/某市
who:甲乙方、作者,甲方名稱脫敏,乙方稱“我司/我單位/我廠/我公司”
why:為何立項,項目建設目的
what:項目名、項目內容、作者的工作內容
how much:項目預算,不宜太小,不能太大,400~100W
how:作者采用的技術/方法
3、【過渡 50~100字】
① 關鍵需求:客戶需求/項目特征/約束…
② 作者分析后識別出的問題,需要怎么解決,引出下文
4、【理論/分論點 500~600字】
① 緊扣題干要求:一般是對題干2的應答,注意要寫成一段,但需要有明顯的標識。行文需要注意格式,分論點之間用分號隔開
② 逐點回答:分論點的基本概念、基本原理、應用場景、簡單舉例即可,無關內容不要贅述
③ 惜字如金:注意控制字數,不要擠占實踐部分
5、【實踐部分 1000~1200左右】
① 結構上:與理論部分相呼應對應,最好保持一致
② 分論點標題:最好擬一個小標題,注意小標題的行文格式
③ 分論點內容:先識別問題,闡述why;然后分析/設計/解決問題,闡述how;再闡述效果
6、【結尾 300~400字】
① 項目效果:呼應論點、上線、穩定運行、獲得好評、下一步計劃…
② 存在的問題:闡述小問題,且已解決的
③ 收獲/反思/復盤:甲乙方、個人、團隊

摘要

2020 年 5 月,我司中標了某一線城市大型物流公司的物流信息管理項目。項目包括倉儲管理、運輸管理、財務管理、訂單管理、BI等多個子系統。在需求調研的過程中了解到業主物流倉庫分布在全國上百個不同地點,大約3000輛貨車,客戶規模較大,系統需具備高并發能力。本人有幸擔任架構師,負責系統架構、系統設計等工作,經過充分的分析、多次POC,設計并實現了支持高并發的物流信息管理系統。本文以此項目為例,首先介紹了如CDN、負載均衡、緩存、消息隊列等相關高并發設計技術,然后詳細闡述了高并發設計技術在項目中的具體應用。得益于高并發設計技術,該項目已穩定運行兩年多,經受了兩次的雙十一活動的考驗,獲得了業主單位的一致好評。

過渡

在經濟全球化和電子商務的雙重推動下,物流業正在從傳統物流向現代物流迅速轉型并成為當前物流業發展的必然趨勢。在系統工程思想的指導下,以信息技術為核心,強化資源整合和物流全過程優化是現代物流的最本質特征。通過使用計算機技術、通信技術、網絡技術等手段,建立物流信息化管理,以提高物流信息的處理和傳遞速度,提升更人性化的服務,完善實時物流跟蹤,減少物流成本。

項目背景

2020 年 5 月,我有幸參加了某物流公司的物流信息管理項目,項目由多個子系統組成,包括倉儲管理、運輸管理、財務管理、訂單管理、BI等多個子系統,這些子系統之間有許多協同作用,又是相互依賴的,同時從用戶層面系統分為三個端:后臺系統管理端、客戶端、司機端。項目的目的是打造物流公司內外部各作業環節的信息化、可視化和一體化。通過對物流信息的收集、存儲、傳遞和處理,達到對物流活動控制和管理,幫助企業進行信息分析以及決策支持,加快對市場的反應速度。本人作為系統架構師,參與了系統規劃、需求分析、系統設計、系統開發和系統實施等過程,主要負責系統架構設計的工作。通過與關鍵干系人多輪次的溝通交流,經過項目組內部充分的需求分析,我們識別出該項目具備業務模塊相對獨立、業務不能中斷、業務可承載高并發等關鍵需求。結合關鍵需求,我組織了項目組對高并發的軟件設計技術進行調研,經過溝通、討論、驗證,最后一致認為采用CDN內容分發網絡、負載均衡、緩存、消息隊列等相關技術可以確保該項目的成功實施。下面分別對這些技術進行描述,并說明各自的主要適用場景。

論點理論

(1)CDN內容分發網絡,通過在網絡各處放置節點服務器所構成現有的互聯網基礎之上的一層虛擬網絡,能夠實時的根據網絡流量和各節點的連接、負載情況以及到用戶的距離和響應時間等綜合信息將用戶的請求導向離用戶最近的服務節點上,使用戶可以就近取得所需內容,解決網絡擁擠的狀況,提高用戶訪問網站的響應速度和成功率。CDN解決因分布、寬帶、服務器性能帶來的訪問延遲問題,適用于站點加速、點播、直播等場景。
(2)負載均衡構建在原有網絡結構之上,提供了一種透明且廉價有效的方法擴展服務器和網絡設備的帶寬、加強網絡數據處理能力、增加吞吐量、提高網絡的可用性和靈活性。將工作任務進行平衡、分攤到多個操作單元上進行運行,例如Web服務器、FTP服務器等,從而協同完成工作任務,同時根據實際情況選用不同的負載均衡技術和算法。是解決高并發,高可用,擴展性的終極解決方案。
(3)緩存技術在有高并發需求的系統中起著至關重要的作用,可以進一步提高數據的讀取速率。緩存分為本地緩存和分布式緩存,區別在與是否要走網絡通訊。其中分布式緩存通常由一個服務端實現管理和控制,有多個客戶端節點存儲數據,能夠動態地擴展緩存節點、自動發現和切換故障節點。主要用于在高并發環境下,減輕數據庫的壓力,提高系統的響應速度和并發吞吐,一般應用在數據庫和應用的中間層。
(4)消息隊列是在消息的傳輸過程中保存消息的容器,它具有低耦合、可靠投遞、流量控制等一些列功能。消息隊列主要有三種角色:生產者、消息隊列、消費者,消息隊列提供路由并保證消息的傳遞,生產者和消費者通過消息隊列傳遞消息。可以應用在解決系統之間耦合、異步通信、流量削峰填谷等問題。

下面詳細闡述相關技術在項目中的具體應用。

論點實踐

一是,采用CDN技術,提高網站應用中大量靜態資源的加速分發。由于各個應用系統存在大量的靜態資源,例如加載頁面時需要的html、css、js等文件,物流作業過程中產生的倉庫貨品、運輸存證等大量圖片和視頻。為了避免當大量請求涌入,在帶寬不足的情況下,導致頁面或資源加載不出來,影響工作人員效率及用戶體驗。我們利用CDN技術將這些靜態資源提供下載加速分發,通過CDN緩存在邊緣節點上,使各終端用戶訪問時可以就近訪問,提高了回源速度,節省了近2/3的回源(業務服務器)帶寬成本。
二是,采用負載均衡技術,提高系統并發處理能力。在設計和開發階段,根據各子系統獨立性、耦合度,采用微服務形式將項目拆分成倉儲作業服務、庫存服務、訂單服務、運輸服務、用戶中心、GPS服務、數據計算等多個服務,形成了各終端用戶訪問應用系統,應用系統訪問各服務的鏈路。為避免短時間內大量客戶下單、查詢物流信息,倉儲高峰期業務人員的大量操作等高并發請求導致系統癱瘓。我們根據不同系統的訪問量及用戶量,為各計算節點添加若干節點,在各終端用戶訪問子系統時采用反向代理負載均衡技術Nginx,各子系統訪問內部服務時采用基于HTTP的負載均衡技術Ribbon。由于相同系統或服務所分布的資源相同,在負載均衡算法上統一使用了輪詢算法。項目實踐中因負載均衡技術,不僅提高了系統高并發,也提高了系統的高可用和高擴展性。
三是,采用分布式緩存Redis,保障熱數據的應用,提高系統訪問效率。項目的數據大抵可以分為三類。一類是例如倉庫配置、運輸設備資源配置、組織結構配置等系統的基礎信息。一類是系統正常運行時產生的數據,例如倉儲相關數據、運輸相關數據、訂單數據等一些業務數據。第三類是經過計算、分析、加工后的數據,例如倉儲報表、運輸報表等業務報表以及監控作業大屏等。其中,第一類數據在系統中維護好后需要頻繁訪問名副其實的熱數據,如果用傳統關系型數據來存儲,其讀寫 I/O 性能必然成為瓶頸,因此我們采用 Redis 來存儲這類熱數據,大大提升了系統響應速度,提高了用戶體驗感。并且建立高可用的Redis集群和哨兵模式,防止因Redis的宕機而影響整個系統。
四是,采用消息隊列 Kafka,達到流量削峰填谷、應用耦合、異步通信作用。項目中為實現對運輸中的車輛實時定位追蹤,接入了第三方GPS定位系統,在GPS數據服務中與第三方GPS系統約定好協議,實時的接收成千上百個車輛的大量GPS信息,同時需要向數據計算服務和運輸服務提供數據進行業務計算。為防止下游鏈路遭到流量沖擊而癱瘓,利用Kafka的高吞吐以及異步通信等特點,承載了大量GPS數據,并且下游服務通過訂閱Kafka主題對數據消費進行處理,完美的解決了大量GPS信息接收問題以及多個業務對相關信息的同時處理。

結尾

得益于高并發設計技術,項目組在時間緊、任務重、跨多部門的前提條件下,經過 6 個月的艱苦奮戰研發,保質保量地按期完成項目交付,目前已穩定運行 2 年。該項目支撐了物流公司的核心業務,項目運行可靠,各項功能和性能指標超過客戶預期,連續兩年經受了雙十一活動的考驗,深受客戶好評。在項目開發過程中也存在不足之處,由于系統被拆分了多個服務,同時還存在多個中間件,在初期需要登錄多個服務器進行部署,操作繁瑣復雜,后面通過Docker和Jenkins實現了自動化部署,減少了運維成本。經過本項目的實踐,我系統架構能力也得到了提高。路漫漫兮其修遠,吾將上下而求索,我將在未來的系統架構師一路走下去,在今后的項目開發工作中仍需要不斷的總結和提升架構能力。

總結

以上是生活随笔為你收集整理的软考·系统架构师论文——论软件的高并发设计的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。