原创 【壓測】Jmeter入門

一、前言       項目做大的時候就必不可少要進行壓力測試,常見的壓力測試工具有loadrunner、Jmeter。最近小編在項目中接觸了Jmeter,有一些感觸,所以做一些這方面的總結。主要包括了兩個方面:直接通過可視化界面操作,

原创 【Jmeter】Jmeter使用AbstractJavaSamplerClient編寫自定義流程測試

一、前言       在上一篇博客中,小編向大家簡單介紹了jmeter 的GUI界面的壓測使用步驟,通過這個步驟我們可以應付大部分的壓測問題了。很多接口都可以通過這種方式來得到壓測報告,根據壓測報告的數據來分析線上真正要使用多少臺機器

原创 【分庫分表】sharding-jdbc + spring boot對大表進行分庫分表

一、前言       最近小編跳槽了,剛好入職了一家移動互聯網公司。非常的幸運。來新公司後的第一個項目就是對通知服務進行優化改進,其中,一個業務就是當用戶登錄的時候,就會登錄訪問通知表,根據用戶id加載通知信息。由於通知量已經上億了,

原创 【多線程】程序猿進階多線程(四)—— 線程同步

一、前言       在上一篇博客,小編向大家介紹了線程的狀態,算是進一步拉開了多線程的面試,在這篇博客中,小編向大家介紹一下多線程中常見問題有線程同步和線程通信,這篇博客中小編向大家介紹線程同步。 二、什麼是線程同步??       線

原创 【DB】數據庫使用觸發器

一、情況說明       今天調用account服務,進行賬戶更新。其中有兩步更新同一個表:       1.更新t_account_event的狀態       2.更新t_account_event的基本信息       因爲在t_

原创 【Spring Cloud】分佈式必學springcloud(十二)——結合SpringCloud Stream 異步調用

一、前言       在上一篇博客中,小編向大家介紹了一下SpringCloud Stream,相信實踐過的老鐵們,肯定是能收發消息了。但是有一個問題,比如我的發送端,使用的是@InboundChannelAdapter(value =

原创 【多線程】程序猿進階多線程(一)——全局觀

一、前言       在這篇博客開始,小編向大家介紹一些跟多線程相關的內容。多線程用的好了可以使得系統性能提升,用的不好可能會造成災難。小編也是抱着學習的心態,邊總結邊學習。       這篇博客是多線程的宏觀介紹。 二、多線程     

原创 【多線程】程序猿進階多線程(三)—— 線程的運行狀態

一、前言       在上一篇博客中,小編向大家介紹了 線程創建和啓動,簡單的向大家介紹了線程創建和啓動的三種方法:1.繼承Thread類,2.實現Runnable接口,3.使用Future和Task創建。可能大家對線程的初步創建有了一定

原创 【多線程】程序猿進階多線程(二)—— 線程創建和啓動

一、前言       在前一篇博客中,小編向大家介紹了多線程的全局觀,學習多線程的幾個方向。在這篇博客中,小編會向大家介紹一下非常基礎的線程的創建和啓動。 二、線程創建的三種方式 繼承Thread,重寫run方法 實現Runable接口

原创 【redis】分佈式鎖

一、前言       最近項目中,基本功能實現了,準備都訪問多的接口加緩存。當然緩存就想到了redis。正好自己也查了查redis帶來的一些問題:緩存穿透、緩存併發、熱點緩存等。       也想到自己負責的模塊涉及到資金,同一時間只能有

原创 【Spring】每個程序員都使用Spring(三)——Aop 面向切面編程

一、前言       前面的博客中,簡單的介紹了IOC,這篇博客將向大家介紹Aop,面向切面編程。       可能一說面向切面編程,不好理解。什麼是切面?怎麼還編程?什麼鬼?大家以前可能聽的多的是面向對象編程、面向接口編程、面向函數編程

原创 【JVM】程序員進階JVM(一)——Java內存區域

一、前言       這篇博客起,小編會向一個更加深層次、逼格滿滿的區域進發——JVM。       可以說JVM不是一個新鮮的東西,但是做java的都會了解JVM,都聽過JVM。有的時候我們寫的代碼運行跟JVM也有關係。 二、JVM介紹

原创 【Spring】每個程序員都使用Spring(四)——Aop+自定義註解做日誌攔截

一、前言       上一篇博客向大家介紹了Aop的概念,對切面=切點+通知 、連接點、織入、目標對象、代理(jdk動態代理和CGLIB代理)有所瞭解了。理論很強,實用就在這篇博客介紹。       這篇博客中,小編向大家介紹spring

原创 【多線程】線程和進程的概念、並行和併發的概念

一、前言       我們的操作系統,在一個時間中,只能處理一個線程。cup一直在衆多的線程之間不斷切換。這個就是時間輪轉算法,每一個線程有相同的時間片。 二、線程和進程       (1)在傳統的操作系統中,程序並不能獨立運行,作爲資源

原创 【Java】Fel計算引擎學習

一、前言       最近的項目中,有一個這種需求,系統中配置很多的公式,每個公式中都會有因子。比如:本金*利息,計算的時候,把這兩個因子替換掉,如,100*0.01,然後通過java來計算出結果。 二、實現的方式       爲了解決j