国产亚洲免费播放片_日韩欧美中文字幕在线韩免费_亚州在线观看视频在线观看_中文字幕AV熟女_中文高清欧美日本_视频一区二区三卡在线观看免费_日本精品人妻久久久_亚洲日韩另类制服无码AV_777米奇影视狠狠狠_国产成人免费无码精品

?

您好!歡迎來到上海艾縱企業(yè)管理咨詢有限公司!

加入收藏

登錄注冊

400-676-1955

專題課程

高質(zhì)量軟件架構(gòu)設(shè)計案例分析和實踐

我要報名

編輯日期 2018-06-13  閱讀次數(shù):885 次


【課程簡介】

本課程培訓(xùn)周期為3

隨著網(wǎng)絡(luò)與信息技術(shù)的高速發(fā)展,軟件研發(fā)逐漸朝著大規(guī)模、高復(fù)雜度的大型軟件系統(tǒng)發(fā)展。特別是隨著近幾年互聯(lián)網(wǎng)的高速發(fā)展,帶動著全行業(yè)的互聯(lián)網(wǎng)轉(zhuǎn)型,使得未來的軟件系統(tǒng)還將向著持續(xù)性、深層次架構(gòu)調(diào)整的方向發(fā)展。在這樣的背景下,如何從全局的角度思考軟件系統(tǒng)方方面面的問題,提前識別軟件項目的技術(shù)風(fēng)險點,并有針對性地制訂技術(shù)方案,以及如何構(gòu)建一個更加靈活、易于調(diào)整、快速變化的軟件系統(tǒng),成為大型軟件系統(tǒng)至關(guān)重要的設(shè)計內(nèi)容。

本課程首先將系統(tǒng)地講述高質(zhì)量的軟件架構(gòu)該設(shè)計過程,包括如何運用領(lǐng)域驅(qū)動設(shè)計的思想貫穿整個架構(gòu)設(shè)計,又如何使軟件系統(tǒng)在衍變中調(diào)整架構(gòu),從而適應(yīng)需求的變化;如何運用5視圖的方法,全面地思考軟件架構(gòu)各方面的問題:從需求的角度進(jìn)行可行性分析;從全局的角度進(jìn)行軟件分層、技術(shù)選型、模塊劃分等方面的設(shè)計;運用數(shù)據(jù)持久化的方式設(shè)計數(shù)據(jù)結(jié)構(gòu);運用“屬性->場景->決策”的過程把握非功能設(shè)計;從部署、網(wǎng)絡(luò)、性能的角度進(jìn)行物理架構(gòu)的設(shè)計,從而有效避免架構(gòu)設(shè)計時遺漏關(guān)鍵風(fēng)險點,使架構(gòu)設(shè)計過程變得有序。

接著,本課程從高并發(fā)、大數(shù)據(jù)、高可靠3個方面入手,講解了大型互聯(lián)網(wǎng)應(yīng)用系統(tǒng)是如何從容應(yīng)對數(shù)以億計的用戶并發(fā)訪問、海量業(yè)務(wù)數(shù)據(jù)的性能壓力,如何設(shè)計高效而穩(wěn)定的軟件架構(gòu)。課程由淺入深、層層推進(jìn)、從各個層面逐步介紹了,在不同用戶壓力環(huán)境下,架構(gòu)設(shè)計各個環(huán)節(jié)可能遇到的性能問題,可以采用的技術(shù),這些技術(shù)的基本原理與解決思路,以及相關(guān)互聯(lián)網(wǎng)應(yīng)用的具體案例。通過這些案例的講解,可以為學(xué)員日后的架構(gòu)設(shè)計開闊思路、加深認(rèn)識。

此外,在面對海量數(shù)據(jù)方面,本課程還介紹了NoSQL數(shù)據(jù)庫、Hadoop大數(shù)據(jù)處理技術(shù),以及它們在應(yīng)對海量數(shù)據(jù)存儲、深度數(shù)據(jù)挖掘與高效數(shù)據(jù)查詢方面,所做的設(shè)計。通過案例講解,可以讓學(xué)員理解如何運用NoSQL數(shù)據(jù)庫與Hadoop大數(shù)據(jù)處理技術(shù)解決相關(guān)問題、設(shè)計真實的系統(tǒng)。

 

【培訓(xùn)特色】

本課程注重實戰(zhàn),采用案例貫穿的方式,收集了大量的真實案例,針對項目過程中技術(shù)人員常犯的錯誤進(jìn)行了匯總與研討,并最終形成培訓(xùn)教程。通過大量的真實案例,詳細(xì)地介紹了軟件架構(gòu)設(shè)計過程需要注意的要點以及難點,這些知識都是講師十幾年經(jīng)驗的總結(jié)。

【培訓(xùn)對象】

中高級工程師、企業(yè)架構(gòu)師、軟件設(shè)計師、數(shù)據(jù)庫/存儲技術(shù)人員、技術(shù)決策/解決方案人員等。

【培訓(xùn)時長】

3


【課程大綱】

 

?

       

      授課內(nèi)容

      第一部分 高質(zhì)量架構(gòu)設(shè)計

      第一單元 軟件架構(gòu)設(shè)計概述

      情景?。很浖軜?gòu)設(shè)計的價值

      1.    一個人的軟件設(shè)計過程

      2.    5個人的軟件設(shè)計過程

      3.    10個人的軟件設(shè)計過程

      4.    20個人以上的軟件設(shè)計過程

      結(jié)論:揭示架構(gòu)設(shè)計的價值與架構(gòu)師的作用

      架構(gòu)設(shè)計5視圖法:

      1.    介紹架構(gòu)設(shè)計5視圖法

      2.    運用5視圖法設(shè)計軟件架構(gòu)的過程

       

      第二單元 邏輯架構(gòu)設(shè)計過程

      案例講解邏輯架構(gòu)的設(shè)計過程

      1.    邏輯架構(gòu)的概念與作用

      2.    需求分析與用例模型設(shè)計

      ?  由粗到細(xì)的需求分析過程

      ?  不同類型的用例描述

      3.    流程分析與行動圖

      4.    領(lǐng)域模型分析

      ?  講解領(lǐng)域驅(qū)動設(shè)計的思想

      ?  在需求討論中繪制領(lǐng)域模型

      ?  用原文分析法進(jìn)行領(lǐng)域分析

      5.    需求確認(rèn)與可行性分析

      ?  探討需求不可行給項目帶來的風(fēng)險

      ?  案例講解主動式需求分析的過程

       

      第三單元 開發(fā)架構(gòu)設(shè)計過程

      案例講解開發(fā)架構(gòu)的設(shè)計過程

      1.    開發(fā)架構(gòu)的概念與作用

      2.    討論合理的分層架構(gòu)

      案例:演示一個工資系統(tǒng)的需求變更過程

      ?  展示三次巨大需求變更及其分析設(shè)計過程

      ?  探討什么樣的架構(gòu)能真正適應(yīng)需求的變更

      3.    技術(shù)選型與決策

      4.    軟件架構(gòu)設(shè)計

      ?  案例講解軟件的可擴(kuò)展設(shè)計

      ?  案例講解軟件的易維護(hù)設(shè)計

      5.    模塊劃分與分包

      6.    軟件開發(fā)規(guī)范的制訂

       

      第四單元 數(shù)據(jù)架構(gòu)設(shè)計過程

      探討傳統(tǒng)的數(shù)據(jù)架構(gòu)設(shè)計過程

      講解基于領(lǐng)域的數(shù)據(jù)架構(gòu)設(shè)計過程

      1.    如何將領(lǐng)域模型轉(zhuǎn)換為數(shù)據(jù)庫設(shè)計

      ?  傳統(tǒng)的4種關(guān)系轉(zhuǎn)換為數(shù)據(jù)庫設(shè)計

      ?  繼承關(guān)系的3種數(shù)據(jù)庫設(shè)計

      2.    如何將領(lǐng)域模型轉(zhuǎn)換為軟件

      貧血模型 vs. 充血模型

       

      第五單位 運行架構(gòu)設(shè)計過程

      探討運行架構(gòu)的設(shè)計過程

      1.    關(guān)注關(guān)鍵點與難點而不是全局

      2.    屬性→場景→決策的分析過程

       

      專題討論運行架構(gòu)需要決策的內(nèi)容

      1.    并發(fā)訪問與串行操作

      2.    同步操作與異步操作

      3.    進(jìn)程與線程

       

      第六單元 物理架構(gòu)設(shè)計過程

      探討物理架構(gòu)設(shè)計過程

      1.    案例講解一些常見物理架構(gòu)設(shè)計

      2.    案例講解應(yīng)用架構(gòu)設(shè)計

      3.    案例講解一些技術(shù)方案的編寫

       

      第七單元 逐步演化的架構(gòu)設(shè)計

      恰如其分的架構(gòu)設(shè)計

      1.    恰如其分的架構(gòu)設(shè)計過程

      2.    風(fēng)險驅(qū)動的架構(gòu)設(shè)計

       

      逐步演化的架構(gòu)設(shè)計過程

      1.    探討老系統(tǒng)維護(hù)過程中架構(gòu)設(shè)計的問題

      2.    剖析以往采取的辦法及失敗的原因

      ?  縫縫補補不能從根本上解決

      ?  走一步退兩步淺嘗輒止的根源

      ?  拋棄一切從頭再來的風(fēng)險

      3.    剖析問題的根源與解決的辦法

      ?  演化式改造的過程

      ?  平臺建設(shè)與重構(gòu)并行

      ?  改造與維護(hù)并舉

       

      剖析架構(gòu)設(shè)計中的一些常見誤區(qū)

       

      第二部分 互聯(lián)網(wǎng)架構(gòu)設(shè)計

      第八單元 大并發(fā)相關(guān)的指標(biāo)

      高并發(fā)相關(guān)的指標(biāo)

      1.    吞吐量 / 每秒事務(wù)數(shù) / 事務(wù)響應(yīng)時間

      2.    用戶數(shù) / 用戶并發(fā)數(shù) / 大用戶并發(fā)數(shù)

       

      高并發(fā)問題的解決思路

      1.       目標(biāo)→問題→方案

      2.       業(yè)務(wù)梳理與優(yōu)化

       

      第九單元 并發(fā)問題的快速優(yōu)化策略

      傳統(tǒng)架構(gòu)的演變過程

      1.    All-in-One的架構(gòu)設(shè)計

      2.    多級集中的架構(gòu)設(shè)計

      3.    傳統(tǒng)架構(gòu)面臨的挑戰(zhàn)

       

      基于風(fēng)險的架構(gòu)設(shè)計思想

      1.    先識別未來存在的風(fēng)險,再進(jìn)行有針對的架構(gòu)設(shè)計

      2.    用最快的速度解決最急迫的問題

       

      并發(fā)問題的快速優(yōu)化策略

      1.    智能DNS及其優(yōu)缺點

      2.    CDN內(nèi)容分發(fā)網(wǎng)絡(luò)及其優(yōu)缺點

      3.    負(fù)載均衡與反向代理
      1
      Nginx技術(shù)及其解決的問題
      2
      )動靜分離的設(shè)計
      3
      Zookeeper及其非中心化設(shè)計

       

      第十單元 數(shù)據(jù)庫瓶頸及其優(yōu)化策略

      數(shù)據(jù)庫瓶頸

      1.    現(xiàn)有數(shù)據(jù)庫設(shè)計及其性能瓶

      2.    Shared Disk vs. Shared Nothing

      3.    介紹PostgreSQLGreenPlum

       

      數(shù)據(jù)庫讀寫分離的設(shè)計

      1.    三種不同類型的操作及其優(yōu)化策略
      業(yè)務(wù)操作 / 隨機(jī)查詢 / 統(tǒng)計分析

      2.    MySQL主從機(jī)實現(xiàn)讀寫分離
      1
      MySQL主從機(jī)實現(xiàn)讀寫分離的思想與局限
      2
      )在原有系統(tǒng)上實現(xiàn)讀寫分離的改造過程

      3.    真正實現(xiàn)讀寫分離的設(shè)計方案

       

      數(shù)據(jù)庫分庫的設(shè)計思想

      1.    縱向拆分的設(shè)計思想及其注意的問題
      案例:國家金稅三期的架構(gòu)設(shè)計
      案例:阿里巴巴的架構(gòu)設(shè)計

      2.    橫向拆分的設(shè)計思想及其注意的問題
      1
      )按地域拆分的設(shè)計及其評價
      2
      )按用戶號進(jìn)行拆分的設(shè)計及其評價
      案例:淘寶網(wǎng)的架構(gòu)設(shè)計解析

      3.    在原有系統(tǒng)上如何實現(xiàn)數(shù)據(jù)庫分庫
      1
      )縱向拆分的系統(tǒng)改造過程
      2
      )橫向拆分的系統(tǒng)改造過程

       

      第十一單元 應(yīng)用緩存的設(shè)計

      應(yīng)用緩存技術(shù)

      1.    應(yīng)用緩存技術(shù)解決的問題

      2.    單機(jī)緩存 vs. 分布式緩存

      3.    分布式緩存的特點及其設(shè)計

       

      Memcached技術(shù)

      1.    Memcached技術(shù)及其特點

      2.    分布式哈希算法及其一致性哈希

      3.    Memcached的部署結(jié)構(gòu)及其應(yīng)用方案
      案例:負(fù)載均衡的session同步及其故障轉(zhuǎn)移

       

      如何在原有系統(tǒng)上進(jìn)行應(yīng)用緩存改造

      1.    Spring + Memcached的設(shè)計改造過程

      2.    Hibernate + Memcached的設(shè)計改造過程

      3.    Memcached的命中率分析及其調(diào)優(yōu)

      4.    應(yīng)用緩存的設(shè)計過程中應(yīng)當(dāng)注意的問題

       

      第十二單元 內(nèi)存數(shù)據(jù)庫的設(shè)計

      內(nèi)存數(shù)據(jù)庫技術(shù)

      1.    內(nèi)存數(shù)據(jù)庫的概念

      2.    解析內(nèi)存數(shù)據(jù)庫的運行原理

      3.    Oracle TimesTen的介紹

      4.    Gemfire及其在12306的應(yīng)用

       

      Redis內(nèi)存數(shù)據(jù)庫技術(shù)

      1.    Redis的運行原理及其特點

      2.    Redis的部署形式

      3.    Redis的應(yīng)用設(shè)計
      案例:spring-redis-data的設(shè)計應(yīng)用
      案例:京東訂單系統(tǒng)的優(yōu)化過程

      4.    內(nèi)存數(shù)據(jù)庫的設(shè)計局限

       

      第十三單元 異步化操作的設(shè)計

      1.    異步化操作的原理

      案例:12306的異步化改造過程

      2.    異步化操作的設(shè)計實踐

      3.    分布式隊列的設(shè)計

       

      第十四單元 互聯(lián)網(wǎng)不斷演進(jìn)的架構(gòu)設(shè)計過程

      互聯(lián)網(wǎng)+時代的架構(gòu)設(shè)計特點

      1.    互聯(lián)網(wǎng)+帶來的巨大變革

      2.    互聯(lián)網(wǎng)公司不斷面對的升級改造

      3.    傳統(tǒng)行業(yè)必須面對的互聯(lián)網(wǎng)轉(zhuǎn)型

       

      好的架構(gòu)源于不斷的衍變

      案例:58同城的架構(gòu)衍變過程

      1.    最初的架構(gòu)設(shè)計

      2.    網(wǎng)絡(luò)接入層的改造過程

      3.    數(shù)據(jù)庫拆分的改造過程

      4.    服務(wù)化為中心的改造過程

       

      第三部分 針對大數(shù)據(jù)的架構(gòu)設(shè)計

      第十五單元 NoSQL數(shù)據(jù)庫及其設(shè)計

      NoSQL數(shù)據(jù)庫的概念

      1.    分布式架構(gòu)與CAP理論

      2.    ACID vs. BASE

      3.    強(qiáng)一致性與弱一致性

      4.    NoSQL數(shù)據(jù)庫的特點

       

      MongoDB數(shù)據(jù)庫

      1.    MongoDB數(shù)據(jù)庫簡介

      2.    MongoDB數(shù)據(jù)庫的概念模型

      3.    插入、更新、刪除、查詢操作

      案例:MongoDB實現(xiàn)的海量存儲與快速查詢

      4.    MongoDB數(shù)據(jù)庫的優(yōu)劣勢分析與適用范圍

       

      第十六單元 Hadoop大數(shù)據(jù)處理技術(shù)

      Hadoop大數(shù)據(jù)處理技術(shù)

      1.    Hadoop簡介

      2.    Hadoop生態(tài)圈

      3.    Hadoop架構(gòu)及其與傳統(tǒng)架構(gòu)的優(yōu)勢

       

      Hadoop的核心組件

      1.    解析HDFS分布式文件系統(tǒng)的運行原理

      2. &n