用友iUAP通過百萬壓力測試 輕松應對互聯網高并發
面對互聯網場景,高并發和高可用已成為企業***的挑戰。用友iUAP作為大型企業互聯網開放平臺,必須要支撐2B應用在面對高并發使用場景下的高性能和穩定性。為此,iUAP對平臺進行了百萬人的并發壓力測試。壓測的應用程序都跑在Docker容器里面,由iUAP云運維平臺統一進行不同場景的批量發布和擴容縮容。
本次測試使用建筑行業物資結算系統,按照查詢和保存9比1的比例設置壓力測試場景,基準數據量為2000萬行,在此基礎上進行100萬人并發壓力測試。利用壓力測試工具UAPRunner,模擬多應用場景來驗證產品的運行狀況以及系統資源的使用狀況。
壓力測試運行狀況
壓力測試環境由40臺物理機組成,操作系統采用CentOS7,iUAP云運維平臺直接部署在物理機上,其他所有被壓測機器由運維平臺直接啟動Docker容器,并自動加入服務發現。測試過程中由于需要做多組不同場景的對比,需要不斷切換測試環境場景,基于iUAP云運維平臺,基本在5分鐘以內可以快速完成被壓測場景的搭建,大大節省了壓測的時間成本。
壓測場景的拓撲結構圖
測試結果表明,iUAP平臺百萬并發支撐在3萬左右TPS穩定運行。繼續加大壓測并發,***TPS已達到8萬,此時達到壓測工具的***承受能力,后端應用健康狀況依然非常好。該測試結果通過了用友公司承擔的國家核高基項目組委托的外部測試專家的認可。
iUAP企業互聯網云運維平臺支持Native模式和Docker模式部署應用。其中Docker有多種不同的網絡模型可選(常用的是bridge和host),經過測試報告可以看出:這三種模式的性能有所不同,然而性能高的模式可能帶來的管理問題越復雜。
Docker host網絡模型和Native(原生Tomcat)方式,性能幾乎無差異,Native方式性能略優秀;Docker bridge網絡模型,性能最差,但是以每秒通過的平均事務數來衡量,相比Docker host模型損耗不大,大約在1%左右。
Native模式
Docker host模式
Docker bridge模式
在實際的業務場景中,客戶可以選擇適合自己的模式。如果是web應用,建議大家選擇Docker的bridge模式,這種方式的管理成本***,使用也最方便。如果對性能有一定要求, 建議選擇Docker的host模式,但是需要做好端口管理,以防沖突后,服務不能啟動。如果對性能有***的要求,如通信的場景,可以選擇Native模式,一樣可以進行擴容縮容和服務自愈(但是需要處理好環境沖突、端口管理等問題)。
iUAP企業互聯網云運維平臺使用基于Docker為代表的容器技術,結合容器管理技術,為開發者和企業提供業務快速上線、持續集成、彈性伸縮、日志管理、性能分析、運維監控等功能。能夠幫助開發和運維人員徹底釋放重復運維和各種線上故障帶來的工作負擔。
由于基于Docker“一次構建、到處運行”的理念以及其基于鏡像的機制,iUAP企業互聯網云運維平臺能夠保證開發、測試、生產環境的使用一致性,大大降低了應用測試、上線和升級的時間成本。
iUAP企業互聯網云運維平臺為企業帶來以下價值:
***,快速搭建高可用系統。為企業節省運維時間成本,快速搭建可用于生產環境的互聯網運行平臺;
第二,服務自愈,應用管理從此高枕無憂。通過服務健康檢測機制,能夠發現掛起的應用,并自動重啟,保證系統的高可用性和高并發處理能力;
第三,系統不再是黑盒,運行情況一目了然。收集日志進行報表展現,幫助企業了解業務細節,并及時進行容量規劃。通過深度性能分析,在線還原業務代碼運行邏輯,幫助開發者有針對性調優。