用vertx構建百萬併發請求的超大型高可用系統

需求: 百萬併發鏈接,高可用java

技術選型: centos7,jdk8,vertx3.7.0,mysql8mysql

測試時間:2019年5月20日再次測試成功nginx


成功實現來了百萬併發鏈接訪問的架構。sql

因爲業務保密制度限制,只能說一下大概思路(若是有商業高併發的研發需求,可掃描文末二維碼加做者微信):centos

vertx 使得基於Java作高併發變得更加容易。 vertx Cluster 支持多臺機器的集羣。 即便不採用集羣,不用nginx,zk,當使用多核高配的單個服務器時,vertx也能實現百萬級別的高併發訪問。假設你購買了一個16Core64G內存的雲主機,你的業務類是MyDemoVerticle,那麼爲了充分利用每個CPU,你能夠這樣部署:服務器

DeploymentOptions options = new DeploymentOptions().setInstances(16);
vertx.deployVerticle("com.mycompany.MyVerticle", options);

這樣系統會爲每一個實例分配一個eventLoop.微信


Vertx自動支持高可用機制,若是你但願當服務死掉後能自動重啓是,能夠在部署命令中加上 -ha指令架構

vertx run my-verticle.js -ha

-ha 意味着你的vertx自動運行在cluster模式下。若是須要配置集羣細節,能夠參考 https://blog.csdn.net/ifrozen/article/details/79895413併發

加我微信.png

相關文章
相關標籤/搜索