原创 這篇讓你真正理解Redis的RDB持久化,看完還不懂你們來打我

一、爲什麼需要持久化 redis裏有10gb數據,突然停電或者意外宕機了,再啓動的時候10gb都沒了?!所以需要持久化,宕機後再通過持久化文件將數據恢復。 二、優缺點 1、rdb文件 rdb文件都是二進制,很小。比如內存數據有10gb,r

原创 爲什麼建議框架源碼學習從Mybatis開始

看過Mybatis後,我覺得Mybatis雖然小,但是五臟俱全,而且設計精湛。 這個黑盒背後是怎樣一個設計,下面講講我的理解 一、容器Configuration Configuration 像是Mybatis的總管,Mybatis的所

原创 如何保活主流RPC框架長連接,Dubbo的心跳機制,值得學習

  前言 談到RPC肯定繞不開TCP通信,而主流的RPC框架都依賴於Netty等通信框架,這時候我們還要考慮是使用長連接還是短連接: 短連接:每次通信結束後關閉連接,下次通信需要重新創建連接;優點就是無需管理連接,無需保活連接; 長連接

原创 七天啃完410頁java面試手冊,三面阿里巴巴,5月成功入職研發部

面試前我主要是在牛客網看大家的面經進行查漏補缺,所以面試完後也想記錄下來,權當給大家提供點信息吧。 面試過了挺久了,記憶也有點混亂,爭取想到多少就記下來多少(文末附答案以及大廠java核心面試手冊) 阿里一面:   1、請簡單介紹一下自己

原创 面試官又問我線程併發問題:什麼是ThreadLocal?我這樣懟回去了

前言 ThreadLocal是JDK1.2提供的一個工具,它爲解決多線程程序的併發問題提供了一種新的思路。使用這個工具類可以很簡潔地編寫出優美的多線程程序,解決共享參數的頻繁傳遞與線程安全等問題。如果開發者掌握了ThreadLocal用法

原创 我憑藉以下270道java最新面試真題四面阿里研發部,成功入職P7崗

面試:如果不準備充分的面試,完全是浪費時間,更是對自己的不負責。 今天給大家分享下我整理的Java架構面試專題及答案(文末見面試答案),其中大部分都是大企業面試常問的面試題,可以對照這查漏補缺,當然了,這裏所列的肯定不可能覆蓋全部方式,不

原创 點贊功能,用 MySQL 還是 Redis 好?

點贊功能是目前app開發基本的功能 今天我們就來聊聊 點贊、評論、收藏等這些場景的db數據庫設計問題, 1. 我們先來看看場景的需求: 顯示點贊數量 判斷用戶是否點過贊,用於去重,必須的判斷 顯示個人點贊列表,一般在用戶中心 顯示文章點贊

原创 還在對Git一知半解嗎,這篇保姆級教程教你完全學會Git

本書以教科書的方式,循序漸進地向軟件開發人員或軟件開發的項目管理人員,講述如何快速掌握分佈式版本控制系統Git的應用方法,讓繁瑣複雜的項目開發的版本控制變得高效且輕鬆自如。書中細緻入微地介紹瞭如何使用設置文件和操作Git文檔庫,以及建立

原创 Dubbo技術棧從入門到實戰 細枝末節最詳解學習筆記!

一 爲什麼需要 dubbo 很多時候,其實我們使用這個技術的時候,可能都是因爲項目需要,所以,我們就用了,但是,至於爲什麼我們需要用到這個技術,可能自身並不是很瞭解的,但是,其實瞭解技術的來由及背景知識,對於理解一項技術還是有幫助的,那麼

原创 不聊原理,拿來即用的線程池最佳實踐

轉載公衆號: JavaGuide 這篇文章篇幅在5000字左右,絕對是乾貨。標題稍微有點誇張,嘿嘿,實際都是自己使用線程池的時候總結的一些個人感覺比較重要的點。 線程池知識回顧 爲什麼要使用線程池? “ 池化技術相比大家已經屢見不鮮

原创 Oracle官方推薦的性能測試工具!簡單、精準又直觀

在前面的所有性能優化的文章中都是用了這款性能測試工具——JMH,一直沒來得及給大家寫一篇入門的教程,剛好看到了這篇,覺得非常不錯,於是今天就分享給大家,希望對你有幫助。 if 快還是 switch 快?HashMap 的初始化 siz

原创 這篇教你如何快速搭建SpringWeb應用和精通MVC架構,建議收藏

內容提要 Spring MVC屬於Spring Framework的衍生產品,已經融合在Spring Web Flow裏面。Spring框架提供了構建Web應用程序的全功能MVC模塊。SpringMVC4是當前最新的版本,在衆多特性上有了

原创 使用微服務的最佳實踐:編寫、測試、保護和部署微服務(PDF)

內容提要 近些年來,微服務一直是非常熱門的話題,關於微服務架構的討論也是層出不窮。本書以貫穿整書的示例爲出發點,由淺入深地闡述使用微服務的最佳實踐,以及如何避免採用微服務架構可能帶來的複雜性陷阱。本書從微服務架構本身的特徵入手,討論微服務

原创 太詳細了!終於有人把Netty原理架構講解清楚了

本文基於 Netty 4.1 展開介紹相關理論模型,使用場景,基本組件、整體架構,知其然且知其所以然,希望給大家在實際開發實踐、學習開源項目方面提供參考。 Netty 是一個異步事件驅動的網絡應用程序框架,用於快速開發可維護的高性能協議服

原创 一文詳解負載均衡算法實現的四種方式

負載平衡(Load balancing)是一種在多個計算機(網絡、CPU、磁盤)之間均勻分配資源,以提高資源利用的技術。使用負載均衡可以最大化服務吞吐量,可能最小化響應時間,同時由於使用負載均衡時,會使用多個服務器節點代單點服務,也提高了