色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何理解服務器的高性能

454398 ? 來源: Chinaunix ? 作者:Moonecho ? 2020-09-25 14:53 ? 次閱讀

對于大部分應用來說,想要高性能,主要是要做到盡可能的減少網絡請求(含DB、Redis、MongoDB、MQ)等。幾乎所有的應用,性能瓶頸永遠是在帶寬那里;關于各個組件到CPU的時間周期,文字描述如下:L1>L2>memory>disk>internet。

大家都知道IP是逐跳協議,也就是說我只能從一個路由器,到下一個路由器,再到下一個路由器,如果你的電腦到服務器,中途要經過很多個路由器,那時間周期就會長很多很多很多。為什么要做CDN、P2P等也是這個考慮,縮短網絡的路徑(降低帶寬承載也是一方面)。

就像是我有一個游戲服務器,在線人數約4000,里面是一個狀態機在跑,需要不斷的去檢測各種狀態、經驗、星座、任務開放、技能開放等。一個玩家大約10個狀態的判定,4000個玩家必須在200ms之內檢測完畢,不然延遲會很嚴重,那1s就是大約執行5次,如果每一次數據都去Redis去取,大約是5*10*4000 = 200k次,別說Redis,再牛的服務器都頂不住!

遇到這種情況,建議把數據放在內存里面,直接從內存取,然后foreach。大部分的應用優化到這里,基本上應付所謂的日pv百萬,就不是什么問題了。

到了這一步,那么問題來了,對于內部應用,比如分布式文件存儲、數據分析、任務調度,咋整?

對于大數據,其實一直是一個偽命題,數據量太大屬于硬傷。所有的做大數據處理的,都是把數據分成小數據,然后分塊來處理,最后再合并。其實從MySQL、Oracle、msSQL等一系列人RMDB的分區,分庫上的處理就可以看出來。想要提高性能,必須要做到,每個模塊處理的數據量,都是細分到了一定粒度的。這個時候index、group、hash等的重要性,在這里就體現出來了。

若我有一個業務系統,每天的日志大約是10個G,一個月就大約是300G,一季度大約1T,我需要看每小時/每天/每周/每月/每季度的各種報表,每次都去數T里面去找,肯定是不可能的。

一般按業務分析每分鐘的數據,10G/24/60大約7M,然后生成一個分析后的結果文件,大約幾K,1小時就是60個文件,需要查看每小時的數據,則將60個文件的結果合并。

那我需要查看某一個用戶,最近10天來的所有操作/訂單,那原分組方式,已經無法滿足,這個時候怎么辦呢?

在插入用戶數據的時候,可以按照一定規則,比如用戶編號的后兩位取摸,去存儲在某一個文件里面,10G的數據,則可以相對平均的分配到100個文件里面去,需要查看某用戶時,則可以針對用戶編號取摸,直接定位到那個文件,然后再去里面查詢數據。這個是比較簡單的gourp+index。這一塊想明白以后,你就可以在這個基礎上面,寫個定制化的簡單的fs了

經常聽到有人說,多線程的程序還不如單線程的程序性能高。那如何編寫一個能合理利用CPU資源的多線程程序?

大家都知道,線程切換是需要額外的開銷,所以在編寫多線程程序的時候,就需要盡可能的避免共享式資源,這樣就可以在保證數據一致性的同時,而又避開線程等待的時間。

舉個簡單的例子:

我有個大的字典(Dictionary/Map)存放用戶的會話數據,每個線程,去這個字典里面去讀/寫數據的時候,都需要去上鎖,才能保證數據的一致性,如果兩個(更多)線程同時去讀/寫數據,其他的線程就需要去等待當前線程釋放資源,線程越多,則等待的幾率越大,性能則越差,多線程處理變成了單線程處理,且等待完了以后,能否再切換回來這個線程繼續執行,又是另外一個開銷,這一部分屬于系統拖托管,屬于不可控的。

那么問題來了:怎么解決呢?

根據硬件和實際測試數據,合理分配線程資源,比如,我初始化了8個線程,每個用戶的請求,對于線程總數取模,保證每個用戶的請求,同一個線程處理,則可以在每個線程內部,存放這些用戶數據,每個線程在自己內部進行存取,避開了lock,也避開了線程等待/切換帶來的資源開銷。不取模,隨機分配線程,然后用一個hash表來存放,也可。讓每個線程,專注于做自己的事情,任務調度作業,也是基于這個處理。把線程處理機制,放大到虛擬機/物理機之間的消息分發,也是如此。

總體來說,避開網絡開銷,避開海量數據,避開資源爭奪 是所有高性能的幾個基本要素。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10854

    瀏覽量

    211583
  • 服務器
    +關注

    關注

    12

    文章

    9123

    瀏覽量

    85324
  • 路由器
    +關注

    關注

    22

    文章

    3728

    瀏覽量

    113701
  • 數據分析
    +關注

    關注

    2

    文章

    1445

    瀏覽量

    34050
收藏 人收藏

    評論

    相關推薦

    海單路高性能服務器主板

    服務器
    jf_10805031
    發布于 :2024年04月26日 14:23:58

    服務器技術基礎

    中國高性能計算機標準1.1 什么是服務器服務器Server從功能上說,它負責偵聽網絡上其它客戶機(Client)提交的服務請求,并提供相應的
    發表于 09-12 22:55

    華為服務器為什么可以保持高性能和高可靠性

    通過第三方調研機構數據可以看出,華為服務器出貨量不斷攀升,得益于其持續通過高強度的研發投入和聚焦創新,從而為用戶提供高可靠、高性能、簡單易用的計算平臺。
    發表于 08-02 07:19

    高性能服務器開發2018年的原創匯總

    高性能服務器開發 2018 年原創匯總
    發表于 06-10 12:33

    什么是服務器

    大數據_02【大數據基礎知識】01 什么是服務器02 服務器類型03 存儲磁盤(硬盤)01 什么是服務器服務器: 也稱伺服,是一種
    發表于 07-16 07:35

    高性能高并發服務器架構分享

    由于自己正在做一個高性能大用戶量的論壇程序,對高性能高并發服務器架構比較感興趣,于是在網上收集了不少這方面的資料和大家分享。希望能和大家交流 msn: ——————————————————————————————————————
    發表于 09-16 06:45

    詳解Nginx高性能的HTTP和反向代理服務器

    Nginx 是一個高性能的 HTTP 和反向代理服務器,特點是占用內存少,并發能力強,事實上 Nginx 的并發能力確實在同類型的網頁服務器中表現較好。
    的頭像 發表于 03-16 11:23 ?2446次閱讀

    如何監控服務器性能?

    無論您的服務器是在Windows還是Unix上運行,這些關鍵性能領域都可以作為任何服務器監控策略的良好起點,跟蹤這些性能指標作為性能瓶頸的指
    的頭像 發表于 07-19 16:01 ?6258次閱讀

    如何理解高性能服務器高性能、高并發?

    當前,隨著“東數西算”政策的落地,算力時代正在全面開啟。隨著機器學習、深度學習的快速發展,人們對高性能服務器這一概念不再陌生。伴隨著數據分析、數據挖掘數目的不斷增大,傳統的風冷散熱方式已經不足以滿足散熱需要,這就需要新興的液冷散熱技術以此滿足節能減排、靜音高效的需求。
    的頭像 發表于 01-13 09:45 ?2226次閱讀
    如何<b class='flag-5'>理解</b><b class='flag-5'>高性能</b><b class='flag-5'>服務器</b>的<b class='flag-5'>高性能</b>、高并發?

    高性能整流顯著提高服務器供電效率

    電子發燒友網站提供《高性能整流顯著提高服務器供電效率.pdf》資料免費下載
    發表于 07-26 09:46 ?0次下載
    <b class='flag-5'>高性能</b>整流<b class='flag-5'>器</b>顯著提高<b class='flag-5'>服務器</b>供電效率

    gpu服務器是干什么的 gpu服務器與cpu服務器的區別

     相比于傳統的CPU服務器,GPU服務器支持同時計算大量相似的計算操作,可以實現更強的并行計算性能。GPU服務器通常配備多個高性能的GPU,
    的頭像 發表于 12-02 17:20 ?1913次閱讀

    人工智能服務器高性能計算需求

    人工智能(AI)服務器是一種專門為了運行人工智能應用和提供大數據處理能力而設計的高性能計算機。它既可以支持本地應用程序和網頁,也可以為云和本地服務器提供復雜的AI模型和服務。
    的頭像 發表于 12-08 09:44 ?523次閱讀

    國產高性能溫補晶振用于服務器光模塊,替換SiTime

    國產高性能溫補晶振用于服務器光模塊,替換SiTime
    的頭像 發表于 08-09 09:41 ?336次閱讀
    國產<b class='flag-5'>高性能</b>溫補晶振用于<b class='flag-5'>服務器</b>光模塊,替換SiTime

    GPU高性能服務器配置

    GPU高性能服務器作為提升計算速度和效率的關鍵設備,在各大應用場景中發揮著越來越重要的作用。在此,petacloud.ai小編為你介紹GPU高性能服務器的配置要點。
    的頭像 發表于 10-21 10:42 ?189次閱讀

    高性能服務器有什么用處?

    高性能服務器是一種基于云計算技術的虛擬化服務器,具有高性能、靈活性、可靠性和安全性等特點。它廣泛應用于網絡托管服務、數據備份與恢復、大數據
    的頭像 發表于 11-04 10:22 ?178次閱讀
    主站蜘蛛池模板: 99视频在线国产| 91原创在线| A级韩国乱理伦片在线观看| 国产VA精品午夜福利视频| 精品午夜寂寞影院在线观看| 青苹果乐园在线观看电视剧| 亚洲国产精品一区二区久久第| 22eee在线播放成人免费视频| 国产成人无码一区AV在线观看 | 亚洲绝美精品一区二区| 99精品国产在热| 国产在线观看成人| 青草视频久久| 野花视频在线观看免费| 久久人人玩人妻潮喷内射人人| 肉小说高h| 主播蜜汁丝袜精品自拍| 国产免费午夜| 嗯啊快拔出来我是你老师视频| 亚洲不卡视频在线观看| 菠萝菠萝蜜视频在线看1| 久久精品国产96精品亚洲| 色偷偷网址| 999资源站| 精品久久免费观看| 日日啪在线影院百度| 2012中文字幕手机在线| 果冻传媒视频在线观看完整版免费| 欧美午夜精品一区区电影| 一级毛片免费播放| 国产精品永久免费视频| 日本69xxxxx| 99久久99久久精品国产片果冻| 和尚扒开双腿蹂躏| 桃花色影院| 哺乳期妇女挤奶水36d| 免费看大黄高清网站视频在线| 亚洲三级在线中文字幕| 国产精品久人妻精品| 日本无码免费久久久精品| 91九色麻豆|