對大流量,高併發,高效能的理解

2022-07-12 12:51:09 字數 606 閱讀 6282

面試的時候經常會被問題「你是如何解決**的高併發問題」,據我理解感覺此問題並不是很嚴格,面試官應該想問的是如何降低伺服器壓力,提高**效能,支援**的大流量訪問,不知道理解的是否正確

我的理解是:

高併發:指同一時刻訪問同一功能的人數巨多,優化做得不好的情況下,可能導致讀出/寫入髒資料,死鎖等問題

嚴格來說:

如果僅說如何解決高併發問題,應該從sql讀寫時防止讀出/寫入髒資料,程式中資源的保護防止死鎖等方面考慮

如果說如何解決大流量問題,或者如何提高**效能,這個問題就比較寬泛了,因為大流量必定會帶來高併發,因此在解決大流量的情況下其實同時也需要解決高併發的問題

**規範化

盡量使用靜態頁面

前端:js/css優化(如檔案大小限制,儘量減少載入次數,頁面上多個icon使用擷取的方式展示等)

後端:資源的正確使用以避免死鎖等,適當使用快取(甚至可以考慮memcache等分布式快取),sql語句的規範化(如優化sql效能的方法)

資料庫方面:如適當使用索引,資料庫的讀寫分離,甚至可考慮使用nosql資料庫(如mongodb,redis等)

運維方面:搭建cdn,搭建集群(高效能,高可用,負載均衡等)

歡迎各位拍磚指導!

php高併發,大流量

一般使用lvs php集群 1000臺 就算日均80億次請求,每秒有10萬併發,那分到每台機器的請求只有100個。只要你的php程式不是太差,100qps總沒問題吧?而真正的瓶頸在於資料庫和儲存系統,資料的一致性,可擴充套件性,可用性很難保證。所以需要根據具體的業務場景再做橫向和縱向的分庫分表。再輔...

高可用,高併發,高效能

高併發 是網際網路分布式系統架構設計中必須考慮的因素之一,它通常是指,通過設計保證系統能夠同時並行處理很多請求。高併發相關常用的一些指標有響應時間 response time 吞吐量 throughput 每秒查詢率qps query per second 併發使用者數等。吞吐量 單位時間內處理的請...

高併發 高效能 高可用

高效能是指程式處理速度非常快,所佔記憶體少,cpu佔用率低。高效能的指標經常和高併發的指標緊密相關,想要提高效能,那麼就要提高系統發併發能力,兩者互相 在一起。應用效能優化的時候,對於計算密集型和io密集型還是有很大差別,需要分開來考慮。還有可以增加伺服器的數量,記憶體,io等引數提公升系統的併發能...