設計效能良好系統的指導思想

2021-06-07 08:51:50 字數 1043 閱讀 1939

簡而言之,如果將你的cpu的速度加快一倍,那麼你通常可以獲得接近兩倍的吞吐量。僅僅將網路的容量加倍通常沒有效果,因為瓶頸一般在主機上。

每乙個到來的分組都會引發乙個中斷。在現代的流水線方式的處理器上,每個中斷都會打斷cpu流水線、干擾快取的工作、要求改變記憶體管理環境,並且強迫儲存相當數量的cpu暫存器。因此,在傳送資料時將tpdu的數量減少n倍,則中斷數和分組開銷也相應減少n倍。

環境切換(比如從核心模式切換到使用者模式)對於效能有嚴重的影響。如同中斷一樣,他們也具有一樣的壞特性,最糟糕的是導致原諒大量的快取無法命中。通過以下的方法可以減少環境切換:讓傳送資料的庫過程在內部建立一套緩衝機制,直到有了相當的數量的資料之後才真正呼叫傳送過程。類似地,在接收端,進來的小tpdu應該被收集起來,然後再成批地而不是單獨地傳遞給使用者,這樣可以使環境的切換次數盡可能減少到最少。最好的情況是,乙個進來的分組會導致從使用者模式切換到核心模式,然後再切換到接收程序,並將心到達的資料交給它。

比多次切換更糟糕的是多次的複製操作。對於乙個新到達的分組,在提取它的tpdu之前對該分組執行了3次或者4次的複製操作。當網路的介面卡將乙個分組接收到專門的卡上硬體緩衝區之後,該分組通常需要被複製到核心快取區中,在核心中,它又被複製到網路緩衝區中,然後複製到傳輸層緩衝區中,最後被複製到接收應用程序中。乙個精巧的作業系統每次會複製乙個字,但是在常見的做法中,每個字大約要求5條指令(載入、儲存、索引暫存器遞增、測試資料末尾和乙個條件分支)。

接下來的三條規則涉及到通訊,而不再是協議處理。第一條規則是:如果你想要更多的頻寬,那麼你直接購買頻寬即可,但這樣做並不能降低延遲。如果想要縮短延遲,則必須改進協議軟體、作業系統或者網路介面。即使所有這些都做到的話,如果瓶頸是傳輸時間的話,則延遲還是無法降下來的。

「一分預防勝過十二分的**」。當乙個網路擁塞的時候,分組會丟失,頻寬會被浪費,傳輸過程中引入無用的延遲,等等。從擁塞中恢復過來並不容易,需要時間和耐心。最好的作法就是避免擁塞,這就像是打疫苗一樣。

定時器在網路中是必要的,但是它們應該盡量少用,而且應該盡量少發生。當乙個定時器到期的時候,通常需要重複執行某乙個動作。如果確實需要重複執行這個動作,則執行這個動作;否則,不必要的重複就是一種浪費了。

培養良好的設計思

我們常常會憑藉一眼的直覺去審視大師們的作品,卻沒有花太多的時間去思考他們是如何構思設計。乙個優秀的作品要從乙個正確的設計思維開始,缺乏深入思考往往會阻礙我們前進的步伐,所以小編今天要教大家培養良好的設計思維。在工作中,我比較強調設計思維,有正確的思維才能更好地駕馭自己的才能完成最終的作品,使用者不過...

畢業設計指導系統文獻閱讀列表

1 何平基,王春梅.基於web的畢業設計遠端指導管理系統設計研究 j 中國現代教育裝備,2015 09 99 101.景東興.高等院校畢業設計管理系統設計與實現 d 天津大學,2016.本科畢業 指導與管理系統分析與設計 j 廣西教育學院學報,2013 06 165 167.畢業 指導與管理系統的分...

怎樣設計良好的類介面

怎樣設計良好的類介面 設計良好的類介面的關鍵是充分理解類的 adt 和抽象層次,介面只是體現 adt 特徵的操作,而不是體現與 adt 相關的操作。1 類介面要體現一致的抽象層次 設計體現 adt 特徵的介面 2 類介面提供成對的服務 仔細審視某個介面是否需要提供相應的 相等的或者相反的操作 3 把...