為了滿足招標和用戶的需要,希望公司的基礎架構能支持5000並發,特此進行驗證和調試。
向兄弟部門借了兩台服務器(每台8核cpu,48g內存),在兩台服務器上安裝虛擬化平台exsi,每台上安裝4個linux7.0虛擬機,總共8個linux7.0虛擬機:
A服務器上的四台虛擬機:AA1,AA2,AA3,AA4。
B服務器上的四台虛擬機:BB1,BB2,BB3,BB9。
規划在AA1/AA2/AA3/AA4/BB1/BB2/BB3分別部署一個應用服務器,並部署服務(找了公司的一個小工程,部署在tomcat6,jdk1.6),啟動服務。總給7個tomcat服務。
在BB9上部署nginx,用作反向代理,輪詢分發請求到這7個tomcat服務。
tomcat配置(server.xml):
tomcat配置(catalina.sh):
nginx配置(nginx.conf):
壓測時監控服務器壓力並不大,但是壓測機cpu爆滿,ping nginx服務器時存在網絡延遲。
猜測B服務器上既有nginx,又有3台應用,B服務器的網卡帶寬可能是瓶頸,因此我們把BB1、BB2、BB3三台剔除掉,然后再壓測。
這時壓測出來效果明顯轉好,基本達到了5000的並發要求。
注:nginx反向代理服務器最好使用一個單獨的物理機,以免轉發能力受影響。