1. 程式人生 > >JavaWeb專案後臺架構搭建總結

JavaWeb專案後臺架構搭建總結

經歷那麼多天,也算是小有收穫,總結一下:

用到的工具:

nmon 檢測伺服器效能,頻寬,cpu,記憶體,網路和磁碟IO

speedtest-cli 測試伺服器網速

jmeter 壓力測試

。。。。。暫時好像就這些吧

環境:jdk1.8 ,tomcat7,ngxin,mysql5.6, amoeba,redis

伺服器構造:

131 ngxin負載均衡+1臺tomcat(手機介面伺服器)

132 1臺tomcat(手機介面伺服器)

133 1臺tomcat(手機介面伺服器)

134  手機介面DB Proxy(amoeba)

135  手機介面DB Master

136  手機介面DB slave

137  1臺tomcat(後臺管理系統伺服器)

138  靜態資源伺服器

139  redis動態快取伺服器

141  介面介面卡DB

142  1臺tomcat(介面介面卡伺服器)

每個機子的記憶體都是12G ;centos 7系統;磁碟200G;cpu:Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz 雙核

最開始jmeter測試出來的結果非常不理想,始終只有60左右的吞吐量:60/s

中間饒了很多圈,找了很多原因,當然,因為還設計到系統對接,也在找對方系統原因,

第二天的時候,問題已經鎖定在了程式碼級別(我靠,萬萬沒想到)

這是如此的令人心痛,看著同事寫的程式碼,也是醉了

慢慢的,一段一段程式碼的測試。。。。靠,記住的,以後慎用intercepter

MD,全是intercepter惹的禍,對每一個手機端介面請求都要攔截,並且判斷,統計。。。反正一大堆,

導致手機介面伺服器cpu基本滿載,手機介面DB的cpu,磁碟IO也接近滿載

再後來,去掉了intercepter,而且,加了一臺手機介面tomcat,加了一臺adapte的tomcat並且對adapter做了ngxin負載均衡

現在吞吐量穩定在300以上(請求引數是:400個執行緒併發,每個執行緒50次迴圈,1s的準備時間)

其實,我也不知道300以上,算不算搞,個人感覺不算高,第一次弄,不過能從60到300多,已經很有成就感了,希望誰看到這篇部落格,一起討論下,

這次算是有經驗的討論,不再是以往的紙上談兵。

如果繼續擴充手機介面的tomcat,吞吐量會繼續上升,說明橫向拓展是有用的

但是,這個時候,壓力就會再DB上面,可能就需要加DB伺服器了,還有個壓力在adapter伺服器,估計也要加adapter伺服器了。

我現在比較大的疑惑是,

1 怎麼繼續優化DB

2 吞吐量300是一個什麼樣的概念,好或者不好(對靜態檔案訪問吞吐量在1500以上)

3 壓測的方式是否合理

-----------------------------------------------------

下班了

summer

相關推薦

JavaWeb專案後臺架構搭建總結

經歷那麼多天,也算是小有收穫,總結一下: 用到的工具: nmon 檢測伺服器效能,頻寬,cpu,記憶體,網路和磁碟IO speedtest-cli 測試伺服器網速 jmeter 壓力測試 。。。。。暫時好像就這些吧 環境:jdk1.8 ,tomcat7,ngxin,mys

JavaWeb專案技術架構總結

題記 工作也有幾多年了,無論是身邊遇到的還是耳間聞到的,多多少少也積攢了自己的一些經驗和思考,當然,博主並沒有太多接觸高大上的分散式架構實踐,相對比較零碎,隨時補充(附帶架構裝逼詞彙)。 俗話說的好,冰凍三尺非一日之寒,滴水穿石非一日之功,羅馬也不是一天就建成的,當然對於我們開發人員來說,一

JAVA WEB專案後臺和介面總結

1.建立java web專案 2.共建立四部分專案:facade,post,service,web 3.facade專案中放 model和service放一起 4.web專案中放控制層controller和webApp(介面,css,js) 5.service專案中放core

SpringCloud專案整體架構搭建(一)

springcloud學習總結 1、專案整體架構搭建 一、新建maven父工程,用來管理專案的jar 如圖所示,點選next 繼續next next 直到finish 編寫pom檔案,管理子模組jar依賴 <properties> <!--配置

JavaWeb專案第三次總結_成績查詢的實現

查詢圖書的功能實現 如何知道瀏覽器往伺服器傳入的引數 1、在編寫好查詢頁面後,使用火狐瀏覽器的friebug (全部—>POST—>引數) 2、編寫GradeListServlet,重寫doGet()和doPOST()方法 伺服器處理

Springboot後臺restful服務單體架構搭建|第二章 開始構建springboot專案

第二章 開始構建springboot專案 前言 新建專案 SpringBoot 前言 該架構是參考公司原架構做了優化,計劃慢慢從0開始完全獨立自己搭建一個基於springboot的restful服務後臺架構,並且完全

專案架構設計總結:基於阿里雲搭建的輕量級架構

前言 從專案啟動到現在差不多快有一年了,在這一年裡經歷了很多大的版本的改變,業務模式經過不斷的磨合也逐漸穩定。在這個時候,總結一下之前專案的架構設計,也為下一階段做個準備。  在專案的初期往往存在很多變數,業務邏輯時刻在變,而且還要保證快速及時,所以,一個靈活多變、快速部署、持續整合並可以適應多種情

JavaWeb專案練習--支付模組、後臺部分模組(手風琴下拉選單、上傳技術)

易寶支付 線上支付的兩種形式: 1. 電商與銀行直連! 安全 不收手續費 不與小電商合作! 2. 第三臺支付平臺 支付寶 易寶 財富通 好處: 不安全 收手續費(1%) 小電商可以與其合作! 需要在第三方註冊賬戶 需要認證! 我

仿有贊後臺+vue+ts+vuecli3.0+elementUi+三期aixo的使用vueX的使用element的引入專案結構的搭建

前言 生病了,沒有及時寫上,各位觀眾老爺抱歉,今天寫上第三期的應該比較乾貨,具體講我們怎麼搭建專案,以及怎麼和後端進行互動,element的引入,vuex在ts改版後的使用方式當前專案demo預覽 游泳健身瞭解一下:githubJQ外掛 技術文件 技術文件會持續更新 內容總結 專案

Intellij Idea 搭建一個完整的JavaWeb專案(二)

手把手搭建一個完整的JavaWeb專案 本案例使用Servlet+jsp製作,用Intellij Idea IDE和Mysql資料庫進行搭建,詳細介紹了搭建過程及知識點。 主要功能有: 1.使用者註冊 2.使用者登入 3.使用者列表展示 4.使用者資訊修改 5.使用者資訊

JavaWEB專案常見的http status code 報錯總結

常見http status code 常見的狀態碼: HTTP: Status200– 伺服器成功返回網頁 HTTP: Status404– 請求的網頁不存在 HTTP: Status503– 服務不可用 —————————————————————

大前端之路node第(2)天:Express Generator搭建node專案後臺

使用 Express Generator Express Application Generator 能夠快速建立一個Express應用框架。 npm install express-generator -g express myapp --view=pug cd myapp npm i

搭建opencv javaweb專案

搭建opencv javaweb專案 用到的技術maven、git、ssm、opencv、javaweb 搭建opencv javaweb專案時,踩了很多坑;懷疑過spring,想過python,最後竟然一不小心成了,what.......閒話不多說,讓我們看看這關鍵的一條命令 即把openc

品優購專案筆記day01——(SOA架構,Dubbox及小demo,Zookeeper,專案打包,管理中心linux環境部署與專案架構搭建

此部落格是為了記錄業餘時間每一天課程的所學 1.什麼是SOA架構 SOA是Service-Oriented Architecture的首字母簡稱,它是一種支援面向服務的架構樣式。從服務、基於服務開發和服務的結果來看,面向服務是一種思考方式。其實SOA架構更多應用於網際網路專案開發。

搭建xqy骨架專案遇到的問題總結

問題及解決方式 ①少寫了@ResponseBody出現的結果 ②FileUtil類中沒有自己想要的方法 這個是匯入的類是不正確的,需要新增以下依賴 <dependency> <groupId>

SpringMVC 專案框架的搭建javaweb專案

1、首先建立一個java的mavenweb專案,即選擇war包。 2、由於剛建立的web工程缺少web.xml等相關的檔案,所以會出現一系列的錯誤,可以用兩種方法去改掉報錯。 第一種:手動新增其他java web專案下的下圖資料夾(需要包含web.xml檔案)放到專案的webapp的資料

淺談javaweb專案環境搭建

javaweb專案,簡單來說就是我們在瀏覽器上可以看到的內容 本文以環境搭建為主,就目前簡單web來說 伺服器上也同樣需要有計算機上所需要的執行環境 如,java,tomcat,mysql 就是本文所需要的,從匯出專案的簡便上來說 這些在伺服器上執行的環境還是與

Mac intellij 搭建 maven javaweb專案

1、下載intellij IDEA,並安裝 2、配置intellij IDEA(前提,電腦上以安裝好jdk與maven) 啟動頁面左下角config-->project Defaults -->settings,查詢maven,找到Maven home d

一個JavaWeb專案開發總結

一個JavaWeb專案開發總結 一、學會如何讀一個JavaWeb專案原始碼 步驟:表結構->web.xml->mvc->db->spring ioc->log->程式碼 先了解專案資料庫的表結構,這個方面是最容易忘記的,有時候我們只顧著看每一個

利用ssm框架搭建javaweb專案中Did not find handler method[uri]的解決辦法

首先自己是一個前端開發者,以前搭建過專案都是根據視訊走的,今天第一次用maven搭建專案,一切按照步驟new專案,寫配置檔案,寫方法類,tomcat啟動成功,但就是在請求地址的時候一直報404,debug頁面錯誤如下: 大致意思就是沒喲找到這個連結的方法。 解決辦法: 在sprin