<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JimmyJin
    走在架構師的大道上,學習的樂趣就在于將知識應用于具體實踐中,在實戰中實現知識的價值。
    posts - 4,comments - 0,trackbacks - 0
    之前只要一提起架構,給我一種很深奧、玄妙的感覺,認為很牛X,曾幾何,以為軟件架構無非就是將幾大框架(各層次)整合在一起而已,后來當我從事系分一段時間之后,體會到如果你不能從整體上認識一個系統(軟件)的話是沒法做架構的,因為滿足系統(軟件)的功能是一個架構師最起碼的要求。從這個層面上講,那系統分析師與系統架構師一樣都要對系統有一個整體的認識,更要認識到該系統在未來可能的變化及做成產品后如何時維護的問題。感覺系統分析師與系統架構師好像沒什么區別似的,雖說早就知道一個偏重業務一個偏重技術。
    但自我開始閱讀“架構之美”這本書后,開始對架構有了進一步的認識:
    本質上,架構只是系統設計中的一部分,無非架構更突出某些細節,并通過抽象省略另一些細節。關注實現系統組件的開發者可能不會特別關心所有組件是如何裝配在一起,而是主要關注少數組件的設計和開發,包括他們必須遵守的架構約束和可以應用的規則。因此,開發者和架構師面對的是系統設計的不同方面。如果說架構關注的是組件之間的關系和系統組件外部可見的屬性,那么設計還要關注這些組件的內部結構。
     架構這個詞本質上是從建筑學這個行業引申過來的,所以在軟件開發這個領域好多概念跟現在的建筑都相似。
    項目關注點:
    功能性、
    可變性、
    容量、
    生態系統、
    模塊化、
    可構建性、
    產品化、
    安全性
    架構還會影響到組織機構。
    架構觀點中的常見思想是結構,每種結構都由各種類型的組件及其關系構成:它們如何組合、相互調用、通信、同步,以及進行其他交互。組件可以是建筑中的支架棟梁或故事中的章節或人物。每種結構都是為了幫助架構師理解如何來滿足特定的關注點,如可變性或性能。展示某些關注點得到滿足時,可能會影響到其他方面的關注點,但架構師必須能夠說明所有關注點都已得到滿足。
    架構師的角色:就是做設計上的決定包括行為上和結構上。
    信息隱藏結構是面向對象設計方法的基礎,它滿足的關注點:信息隱藏結構的設計應該能滿足可變性、模塊化和可構建性的要求。
    定義良好的使用結構將創建系統的適當子集,可以用于驅動迭代式或增量式的開發循環,滿足的關注點:產品化和生態系統。
    信息隱藏模塊結構和使用結構是靜態的結構,存在于設計時和編碼時,進程結構是運行時的結構。
    進程結構滿足的關注點:性能和容量。
    一:伸縮性架構設計
    胖客戶端與廋客戶端
    在線游戲環境與企業環境幾乎完全相反,
    經典的企業環境可以描述為一個“瘦”客戶端連接一個“胖”服務器(這個服務器又常常連接到一個更“胖”的數據庫服務器)。服務器將保存客戶端需要的絕大部分信息,在最理想的情況下,客戶端內在不多,沒有自已的硬盤,它是服務器的一個稱職的顯示設備,絕大多數據真正的工作在服務器上完成。
    游戲世界特別是大型多人在線游戲(MMO)
    MMO和虛擬世界的環境始于一個非常胖的客戶端:
    它通常是頂級的PC、具有最強勁的CPU、很大的內存,以及本身計算能力很強的顯卡。只要有可能,數據就會存放在這些客戶端上,特別是那些不會改變的信息,如地理信息、材質貼圖和規則集。服務器保持盡可能的簡單,通常只保存非常抽象的世界表示和其世界中的實體的表示。而且服務器的設計目標是盡可能少地進行計算。絕大部分的計算留給了客戶端。服務器的真正工作是保存共享的世界真實狀態,確保不同客戶端對世界的看法差異可以根據需要得到糾正。真實狀態需要由服務器來保存,因為控制客戶端的玩家很有興趣讓他們的表現變成最強,所以可能會受到誘惑,根據他們的喜好修改共享的真實(如查他們可以)。在一般情況下,如果有可能,玩家就會作弊,所以服務器必須是共享真實的最終來源。
    MMO和虛擬世界的數據訪問模式也和企業中看到的情有著很大的區別。企業中的一般經驗法則是90%的數據訪問都是只讀的,大多數任務會讀取大量數據,然后會再改寫少量數據。在MMO和虛擬世界的環境中,大多數任務只訪問服務器上少量的狀態數據,但在它們訪問的數據中,大約一半會被改寫
    在線游戲環境與企業環境的共同關注點:
    1,延遲是敵人,但也有不同。最大的不同要追溯到用戶所做的事情的不同。在企業環境中,目標是管理業務,如果總吞吐量得到改進,在處理中有一點延遲是可以接受的,在MMO和虛擬世界的環境中,目標是開心,而延遲是開心的敵人,所以MMO或虛擬世界的基礎設施需要圍繞著盡可能限定延遲的需求來設計即便以吞吐量為代價也在所不惜。
    XX在線游戲(Darkstar)架構的目標:
    1,對伸縮性的需求表明,系統應該是分布式的、并發的,游戲程序員應該把系統視為一臺單機,運行著一個線程,所有允許部署到多線程和多
    計算機上的機制都應由XX在線游戲的基礎設施來考慮。
    2,支持隨時伸縮,同時不要求游戲邏輯受到伸縮的影響,這個架構應該支持游戲動態地響應負載,而不是讓這種響應成為游戲設計的工作的一部分。
    架構:
    Darkstar由一組獨立的服務構成,用一組相互聯系的服務來構建系統,“分而治之”,分而治之是設計所有大型計算機系統的基本方法。
    客戶端連接到游戲邏輯使用的通信機制是基礎設施的一部分,這些機制支持客戶端到服務器的直接通信,也支持一種“發布-訂閱”通道,任何發往通道的消息都會送達該通道的所有訂閱者。
    游戲服務器的設計方式和游戲為為支持并玩家所采取的伸縮性技術。
    并行與延遲

    二:數據增長——Facebook平臺的架構

    posted on 2012-05-24 12:31 jimmy2009 閱讀(231) 評論(0)  編輯  收藏 所屬分類: 系統架構

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产aⅴ无码专区亚洲av麻豆| 不卡视频免费在线观看| 亚洲国产一成人久久精品| 在线播放高清国语自产拍免费| 99免费在线观看视频| 亚洲免费在线观看| 精品亚洲成A人在线观看青青| 亚洲国产美女精品久久| 亚洲AV日韩精品久久久久久久| 亚洲偷自拍拍综合网| 国产在线19禁免费观看国产| 大地资源二在线观看免费高清| 性xxxx视频免费播放直播| 最新久久免费视频| 四虎影视久久久免费| 亚洲精品永久在线观看| 亚洲伊人久久大香线蕉结合| 久久精品国产亚洲av麻豆小说 | 可以免费观看的一级毛片| 永久免费的网站在线观看| 亚洲香蕉免费有线视频| 日韩精品内射视频免费观看| 在线成人精品国产区免费| a级毛片免费网站| 91av免费在线视频| a一级毛片免费高清在线| 一区二区三区AV高清免费波多| 国产成人亚洲综合无| 亚洲精品A在线观看| 四虎永久在线精品免费影视| 永久久久免费浮力影院| 日韩免费电影在线观看| 天天看免费高清影视| 最新中文字幕电影免费观看| 成人免费淫片在线费观看| 女人被男人躁的女爽免费视频| 好吊妞视频免费视频| 国产精品免费_区二区三区观看 | 亚洲愉拍一区二区三区| 亚洲视频无码高清在线| 亚洲精品V天堂中文字幕|