並行:有同時處理多個任務的能力(多個CPU同時)nginx
併發:多個線程被一個CPU輪流切換着執行數據庫
你吃飯吃到一半,電話來了,你一邊打電話一邊吃飯,這說明你支持並行服務器
Node.js事件循環機制使用了高併發策略,採用了單線程模型處理,不會爲每個接入請求分配一個線程,而是用一個主線程處理全部的請求,而後對I/O操做進行異步處理,避開了建立、銷燬線程以及在線程間切換所需的開銷和複雜性。
總結: 高併發是互聯網分佈式系統架構師設計中必須考慮的因素之一,它一般是指,經過設計保證系統可以並行處理不少請求。
提升系統併發能力的方式,方法論上主要有兩種:垂直擴展與水平擴展。架構
能夠經過提高單機硬件性能,或者提高單機架構性能,來提升併發性。
但單機性能老是有限的。併發
互聯網分層架構中,各層次水平擴展的實踐又有所不一樣:異步
各層實施水平擴展後,可以經過增長服務器數量的方式來提高系統的性能,作到理論上的性能無限。分佈式