婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 詳解PHP服務器如何在有限的資源里最大提升并發能力

詳解PHP服務器如何在有限的資源里最大提升并發能力

熱門標簽:衡水外呼系統平臺 常州地圖標注服務商 福州人工外呼系統哪家強 注冊400電話申請 地圖標注平臺怎么給錢注冊 安裝電銷外呼系統 百度商鋪地圖標注 釘釘打卡地圖標注 新河科技智能外呼系統怎么樣

概述

假設報考app是用5W rmb 向供應商采購,報名當天涌入海量考生,并發數飆升至30W+,導致系統宕機,拒絕服務,致使考生無法報名,那么5W rmb 能否支持30W+并發呢?

不過對于我們來說,不妨把問題上升一個角度:「如何在有限的資源里最大提升服務器并發能力」。假設你是一名技術負責人,你在面對一個并發量較大的項目時會如何設計和架構呢?

首先我們可以針對這個項目捋一下大體的思路,從上述描述中不難看出,該項目的瓶頸在于「并發寫」而非「讀」,因此從資源分配上我們可以向「寫」傾斜,在此我將數據全部寫入在Redis中。除此之外,我們也需要盡量的將MySQL的讀操作遷移到Redis上來,MySQL所做的工作更傾向于一些常規非并發的讀寫操作。

服務器

當用戶請求過來,由負載均衡器負載到各個服務器上

這是一張來自symfony的壓測數據,使用的是1 CPU, 4 GB and PHP 7的配置。

上圖的數據來自于swoole官網,在加上我們在實際業務邏輯的執行之后,可以發現,當我們在使用常駐內存的啟動方式時,3臺更低配服務器就能解決上述需要16臺才能解決的問題。

數據庫

其實許多人在接觸后端有一定的階段之后都會了解,現在的許多互聯網項目的瓶頸更多的集中在數據庫I/O這塊,各個語言之間并沒有特別大的差距。包括廣被大家所詬病的PHP-FPM的啟動方式,也可以使用swoole等方式來替代。因此,在這個項目中,會將更多的把精力集中于數據庫這一塊,可以嘗試使用Redis來解決,當然,在具體代碼中,也需要提前準備好一定數量的數據連接池。 另外,也考慮MongoDB雖然在同等配置下的寫入速度要比MySQL快得多,但是相比于Redis,還是存在明顯不足。

注冊登錄

注冊和登錄其實應該分成兩塊來講,二者分別對應的是「寫」和「讀」。在高并發讀寫情況下,直接使用MySQL,如你期待的那樣,會爆。因此,我們在構建整個項目的過程中,可以將用戶數據緩存到Redis中。 「寫」的問題:在用戶數量不明確且并發量較大的情況下,我更傾向于用戶數據不直接入庫。我們可以設計一個開關或閾值,來設置用戶的入庫方式,當并發大的情況下可以通過MQ來異步讓用戶入庫,而平時則可以正常入庫。

提交表單

因為該項目并非我們所常見的秒殺,且需要即時通知的,因此給我們項目的設計大大減少了難度。在提交表單的功能也跟注冊類似,我們完全可以讓數據異步入庫,然后后臺審核。

總結

其他的像CDN、MySQL是否需要主從之類的就不再贅述了,視實際情況而定。從理論上,如果使用PHP-FPM的方式,大概需要19000元/月來解決項目的這個問題,而當使用swoole時,大概需要4500元/月,在這里并沒有鼓吹swoole,想說明的是當我們在面對大并發項目時,尤其是業務邏輯相對復雜,我們使用常駐內存更能解決問題,而這與語言無關。 最后,需要說明的是,上述僅是理論階段,至于實際數據如何都需要進一步檢驗。文章素材來源于網絡,如果有寫的不正確的地方,望指出。

以上就是詳解PHP服務器如何在有限的資源里最大提升并發能力的詳細內容,更多關于PHP服務器如何在有限的資源里最大提升并發能力的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • php多進程并發編程防止出現僵尸進程的方法分析
  • PHP高并發和大流量解決方案整理
  • PHP 并發場景的幾種解決方案
  • PHP下用Swoole實現Actor并發模型的方法
  • php多進程模擬并發事務產生的問題小結
  • PHP利用Mysql鎖解決高并發的方法
  • PHP curl批處理及多請求并發實現方法分析
  • php curl批處理實現可控并發異步操作示例
  • PHP使用curl_multi實現并發請求的方法示例

標簽:克拉瑪依 遼陽 白城 鶴崗 唐山 柳州 六安 鷹潭

巨人網絡通訊聲明:本文標題《詳解PHP服務器如何在有限的資源里最大提升并發能力》,本文關鍵詞  詳解,PHP,服務器,如,何在,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解PHP服務器如何在有限的資源里最大提升并發能力》相關的同類信息!
  • 本頁收集關于詳解PHP服務器如何在有限的資源里最大提升并發能力的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 鹰潭市| 会昌县| 平顶山市| 图木舒克市| 讷河市| 丹东市| 平顺县| 革吉县| 凤台县| 子长县| 漳平市| 安达市| 吴江市| 济源市| 阿瓦提县| 金堂县| 车致| 武汉市| 张家界市| 于田县| 呼和浩特市| 洛川县| 五峰| 应用必备| 永城市| 荃湾区| 额济纳旗| 弥渡县| 边坝县| 苗栗县| 肥城市| 新昌县| 射洪县| 德化县| 启东市| 新昌县| 赣州市| 柞水县| 高雄市| 合水县| 齐河县|