背景 達達后台系統目前每天都要支撐數十億的訪問量,這對於服務系統整體架構是個嚴峻的考驗。考慮到越來越復雜的業務以及不斷增加的訪問壓力,我們對數據層進行了一系列的改造(參見達達-高性能服務端優化之路),也對業務層進行了服務化(參見基於Zookeeper的服務注冊與發現)。同時,參照DDD設計 ...
二 springmvc的工作機制 在容器初始化時會建立所有url和controller的對應關系,保存到Map lt url,controller gt 中.tomcat啟動時會通知spring初始化容器 加載bean的定義信息和初始化所有單例bean ,然后springmvc會遍歷容器中的bean,獲取每一個controller中的所有方法訪問的url,然后將url和controller保存到一 ...
2018-01-03 15:41 0 2563 推薦指數:
背景 達達后台系統目前每天都要支撐數十億的訪問量,這對於服務系統整體架構是個嚴峻的考驗。考慮到越來越復雜的業務以及不斷增加的訪問壓力,我們對數據層進行了一系列的改造(參見達達-高性能服務端優化之路),也對業務層進行了服務化(參見基於Zookeeper的服務注冊與發現)。同時,參照DDD設計 ...
前言 上一篇在springboot中基於自動配置集成了rabbitmq。那么回到最初的話題中就是想在秒殺下單環節增加排隊機制,從而達到限流的目的。 優化秒殺下單流程 之前是在控制器里拿到客戶端請求后直接入庫、減庫存。如果碰到羊毛黨其實這套機制是不行的。並發量 ...
本文提要 最近寫的幾篇文章都是關於數據層優化方面的,這幾天也在想還有哪些地方可以優化改進,結合日志和項目代碼發現,關於數據層的優化,還是有幾個方面可以繼續修改的,代碼方面,整合了druid數據源也開啟了sql監控等,修改和規范了變量的命名方式,建表時的命名方式也做了修改,不過做的這些還不夠,優化 ...
前言 看到標題你可能會問為什么這一篇會談到代碼測試,不是說代碼優化么?前兩篇主要是講了程序的輸出及Log4j的使用,Log能夠幫助我們進行bug的定位,優化開發流程,而代碼測試有什么用呢?其實測試是為了驗證自己所編寫的代碼,及時排除錯誤,減少bug,所以我認為,減少錯誤也是優化的一個方案體現 ...
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis兩個開源框架整合而成(SpringMVC是Spring中的部分內容)。常作為數據源較簡單的web項目的框架。 學習課程的地址:https://www.imooc.com/learn/632 老師 ...
druid介紹 這是druid對自己的介紹: Druid是阿里開源的一個數據庫連接池技術,號稱自己是目前最好的數據庫連接池,在功能、性能、擴展性方面,都超過其他數據庫連接池,包括DBCP、C3 ...
階段總結 又到了優化篇的收尾階段了,這其實是一篇階段總結性的文章,今天是4月29號,距離第一次發布博客已經兩個月零5天,這兩個多月的時間,完成了第一個項目ssm-demo的更新,過程中也寫了33篇博客來對項目進行講解和分析,更多的應該是自己的心得體會,把一些想表達的東西寫在博客中展現 ...
前言 這兩天也一直在糾結這一篇文章該寫什么東西,前面臨時加的兩篇文章就有些打亂了整體節奏,這一篇又想去寫一下代碼層面優化的事情,可是也不太能抓住重要的點,不太確定從何入手,因為這件事情牽涉了太多技術問題,存在於項目的方方面面,如果想要透徹的去講這件事,我也知道是不可能的,糾結了兩天,這篇文章就着 ...