即時通訊優化-優化伺服器端吞吐量
E聊是免費開源的IM架構, 使用它可以快速二次開發聊天應用。
影響因素
伺服器吞吐量跟很多因素有關,下面是影響因素:
背景架構: 比如使用java的netty架構就比php的http架構要好,前者是靜态語言,多線程優化好
算法水準: 進階工程師比低級工程師寫的代碼,複雜度更小,運作時間端
存儲中間件IO: NoSql的存儲普遍比sql性的要高,高出一個數量級左右
是以可以針對上述三點進行優化。E聊專業版使用springboot+基于netty的socket.io伺服器,最大限度的保證了長連接配接與短連接配接的吞吐量,同時,E聊的代碼編寫人員都是進階工程師以及架構,代碼複用度高,bug少。對于專業版而言,熱點資料使用了redis作為分布式緩存,同時使用了本機記憶體作為緩存,降低了存儲中間件IO性能影響。
E聊專業版單機應用性能名額如下:
類型 | 專業版QPS | 社群版QPS |
---|---|---|
單聊 | 1428 | 467 |
群聊(100人線上) | 35 | 22 |
群聊(10000人線上) | 3.3 | 不支援 |
擷取曆史消息(100萬基礎資料) | 2087 | 2.42 |
擷取曆史會話(100萬基礎資料) | 659 | 1.33 |
以上資料的測試機器配置:
配置:
處理器 英特爾 Xeon(至強) E5-2667 0 @ 2.90GHz 六核
記憶體 16 GB ( 金士頓 DDR3 1600MHz )
主硬碟 士必得 K5-256G ( 256 GB / 固态硬碟 )
進入官網
SDK版本:v1.02
技術交流QQ群: 471688937