首頁>Club>
做Java工程師有2-3年,但是一直對高併發不太瞭解。
25
回覆列表
  • 1 # 路人宅

    什麼是高併發?

    高併發(High Concurrency)是網際網路分散式系統架構設計中必須考慮的因素之一,它通常是指,透過設計保證系統能夠同時並行處理很多請求。

    高併發相關常用的一些指標有響應時間(Response Time),吞吐量(Throughput),每秒查詢率QPS(Query Per Second),併發使用者數等。

    響應時間:系統對請求做出響應的時間。例如系統處理一個HTTP請求需要200ms,這個200ms就是系統的響應時間。

    吞吐量:單位時間內處理的請求數量。

    QPS:每秒響應請求數。在網際網路領域,這個指標和吞吐量區分的沒有這麼明顯。

    併發使用者數:同時承載正常使用系統功能的使用者數量。例如一個即時通訊系統,同時線上量一定程度上代表了系統的併發使用者數。

    高併發簡單來說就是在同一個時間點,有大量使用者同時的訪問URL地址,比如:淘寶的雙11,雙12。

    提高系統併發能力的方式,方法論上主要有兩種:垂直擴充套件(Scale Up)與水平擴充套件(Scale Out)。前者垂直擴充套件可以透過提升單機硬體效能,或者提升單機架構效能,來提高併發性,但單機效能總是有極限的,網際網路分散式架構設計高併發終極解決方案還是後者:水平擴充套件。

    網際網路分層架構中,各層次水平擴充套件的實踐又有所不同:

    (1)反向代理層可以透過“DNS輪詢”的方式來進行水平擴充套件;

    (2)站點層可以透過nginx來進行水平擴充套件;

    (3)服務層可以透過服務連線池來進行水平擴充套件;

    (4)資料庫可以按照資料範圍,或者資料雜湊的方式來進行水平擴充套件;

    各層實施水平擴充套件後,能夠透過增加伺服器數量的方式來提升系統的效能,做到理論上的效能無限。

    其他學習高併發,參考資料:

    http://www.cnblogs.com/lr393993507/p/5909804.html

    http://blog.csdn.NET/zxl333/article/details/8454319

    http://www.cnblogs.com/lezai/p/4932396.html

    http://blog.csdn.net/zxl333/article/details/8685157

    併發測試資料:

    http://blog.yoodb.com/yoodb/article/detail/1251

  • 2 # 程式設計師道道

    看文章 不說話http://www.toutiao.com/i6443638665829679629/

    工程化專題

    高效能及分散式專題

    想學習以上進階技術加群:623241711

    雙十一技術架構專題-九陽真經

    效能調優

    想學習以上進階技術加群:623241711

    原始碼分析

  • 3 # 高速攝像機

    1.去培訓。

    2.買資料自己學。

    3.找師傅帶你。

    4.你是天才,可以無師自通。

  • 中秋節和大豐收的關聯?
  • 太陽風暴是否與鯨魚擱淺事件有關?