原创 Spring事務

Spring AOP原理分析介紹了AOP的一些細節,有了這篇文章的基礎,我們再來分析Spring中聲明式事務的實現就能夠輕車熟路一些。一些概念事務可以分爲2種,全局事務與本地事務。全局事務可以保證多數據源下的事務特性(關於事務的ACID特性

原创 Spring AOP原理分析

AOP是Spring Core中幾大重要能力之一,我們可以使用AOP實現很多功能,比如我們常用的日誌處理與Spring中的聲明式事務。AOP的幾個重要概念Aspect:切面,在Spring中意爲所有通知方法所在的類Join point:連接

原创 Redis中的持久化

之前有簡單介紹過Redis的基本介紹,這裏詳細說下Redis的持久化機制引言Redis是內存數據庫,數據全部在內存裏,如果在未做持久化措施的情況下突然宕機,數據就會全部丟失。如果把Redis當做Memcached來看待,那麼也可以不用做持久

原创 Btrace

在之前介紹Java Agent的這篇文章中,簡單介紹了Java agent的應用,裏面提到了基於Java agent實現的線上調試利器Btrace,當我們想定位線上問題卻苦於沒有日誌時,可以使用Btrace attach到線上進程,動態的修

原创 Netty之ByteBuf

通過Netty之Helloworld一文,我們簡單的對Netty進行了入門,本文說一下Netty的數據容器ByteBuf。數據在網絡中是以字節的形式進行傳輸的,JDK的NIO提供了ByteBuffer作爲它的字節容器,然而它使用起來比較繁瑣

原创 Netty之HelloWorld

現在Java網絡編程框架這塊基本已經被Netty壟斷了,幾乎所有框架底層的RPC通信都是使用Netty來實現,Netty是一個高性能的異步通信框架,採用Java的NIO編寫,它屏蔽了NIO的一些晦澀的編程模式,使NIO編程變得更加容易。我們

原创 自用筆記之計算機網絡

這篇文章主要是自己對計算機網絡相關知識點的查缺補漏,權當筆記,邏輯比較混亂。參考自計算機網絡一書。總覽上圖是關於計算機網絡的分層,由最初的OSI七層模型簡化到現在的TCP/IP四層結構。應用層應用層主要負責應用進程間通信和交互,常見的應用層

原创 使用緩存需要注意的幾個問題

前言現在的網站基本上都會加入緩存層來提升性能表現,前端請求會先去緩存層請求數據,若未命中緩存纔會去請求數據庫層,這樣可以大大減少去數據庫層請求的連接數,減少數據庫壓力,加快接口響應速度。緩存雖然是性能利器,但在高併發情況下使用不當可能會導致

原创 UNIX中的五種I/O模型

在Java網絡編程中,應用的較多的主要有BIO,NIO倆種模型,前者爲傳統的阻塞IO模型,後者爲Java1.4後來新加入的非阻塞IO模型,由於後者的性能前者要高出很多,所以開發高性能的應用時,基本都會選擇NIO模型。最典型的比如大名鼎鼎的N

原创 關於TCP協議的總結

昨天下班在地鐵上看到一篇關於TCP總結的博文,覺得非常好,這裏給借鑑過來,由於原文裏有一些關於TCP協議部分晦澀難懂的部分,這裏就不照搬過來了,只摘抄一些大家熟知的部分,例如三次握手,滑動窗口等。原文地址:朱小廝的博客三次握手幾個名詞:SY

原创 Java Agent簡介

這個是之前寫類加載器篇時候挖的坑,來填坑了。引言以前在做後臺服務開發的時候,SpringBoot每次改動代碼都需要手動重啓才能生效,感覺賊麻煩,後來使用Spring提供的一款熱部署插件,但是它只不過是把手動重啓改成了自動重啓,如果服務比較大

原创 MySQL查詢優化--Explain

Explain是我們平時使用最多的MySQL優化關鍵字了,瞭解它的使用是掌握MySQL優化的基礎。當在查詢語句前加上Explain關鍵字,MySQL會展示引擎優化後的sql執行計劃,除此之外,還可以在Explain後面加上Extended關

原创 Spring異步接口

異步接口的重要性我們都知道同步調用會阻塞線程,將耗時的工作放到線程池中工作是常識,這對於servlet容器同樣適用,每個Servlet容器的處理能力有限,他能同時處理的連接數是有限的,如果在我們的Servlet方法中一直佔用着Servlet

原创 虛擬機類加載器

引言今天在聽美團保障性平臺Rhino負責人的分享時瞭解到了Java探針技術,由於對這塊不是很清楚,遂上網查了些資料,瞭解到要想使用它,先要熟悉虛擬機的類加載機制,於是我又去複習了一遍類加載器的知識,這裏就把相關的知識點簡單總結一下(挖個坑,

原创 關於如何更新緩存的探討

寫這篇文章的原因現在我們的系統都需要使用緩存提高性能,使用緩存就需要對緩存進行維護,那麼當數據發生變化時我們應該先操作緩存還是先操作數據庫呢?網上有兩篇很好的文章,一篇是來自58沈劍的架構師之路系列之緩存架構設計緩存架構設計,一篇來自於左耳