原创 16_本地方法棧

標題16_本地方法棧 https://www.cnblogs.com/manayi/p/9293302.html 本地方法棧類似於虛擬機棧,也是線程私有。 1、本地方法棧(Native Method Stacks)與 Java 虛

原创 基於springboot的RestTemplate、okhttp和HttpClient對比

基於springboot實現RestTemplate、okhttp和HttpClient一、HttpClient:無連接池有連接池方式二、RestTemplate:三、okhttp例子1例子2 一、HttpClient: 代碼複雜

原创 Redis主從複製原理學習總結 - 運維筆記

  https://www.cnblogs.com/kevingrace/p/5685332.html 和Mysql主從複製的原因一樣,Redis雖然讀取寫入的速度都特別快,但是也會產生讀壓力特別大的情況。爲了分擔讀壓力,Redis支持主

原创 17-21堆(線程共享)

堆內存17_堆_定義18_堆_內存溢出19_堆_內存診斷_jmap20_堆_內存診斷_jconsole21_堆_內存診斷_jvirsualvm生成快照dump日誌方法 17_堆_定義 定義: Heap,通過new關鍵字創建的對象,

原创 15、線程診斷_遲遲得不到結果

15_線程診斷_遲遲得不到結果 jstack pid 查看進程中各線程的詳細信息,拉到最後,發現死鎖問題。 查看線程詳細信息後,發現問題出現在JAVA程序內29和21行。 分析程序可知,兩個線程各自都想鎖住兩個對象,且開始都各

原创 基於zookeeper實現分佈式鎖(一)

  一、分佈式鎖介紹         分佈式鎖主要用於在分佈式環境中保護跨進程、跨主機、跨網絡的共享資源實現互斥訪問,以達到保證數據的一致性。 二、架構介紹         在介紹使用Zookeeper實現分佈式鎖之前,首先看當前的系統架

原创 14、線程診斷_cpu佔用高

標題14、線程診斷_cpu佔用高 cpu佔用過多 1、定位進程,top找出佔用cpu過多的進程PID 2、. ps -H -eo pid,tip,%cpu | grep PID,找出該進程下佔用過大的線程 TID 例:32655

原创 Kafka(二)

目錄第 4 章 Kafka API4.1 Producer API4.1.1 消息發送流程4.1.2 異步發送 API4.2 Consumer API4.2.1 自動提交offset4.2.2 手動提交offset4.2.3 自定

原创 rocketmq(一)

這裏寫目錄標題1. MQ介紹1.1 爲什麼要用MQ1.2 MQ的優點和缺點1.3 各種MQ產品的比較2. RocketMQ快速入門2.1.1 下載RocketMQ2.2.2 環境要求2.2 安裝RocketMQ2.2.1 安裝步驟

原创 rocketmq(二)

1. 高級功能 1.1 消息存儲 分佈式隊列因爲有高可靠性的要求,所以數據要進行持久化存儲。 消息生成者發送消息 MQ收到消息,將消息進行持久化,在存儲中新增一條記錄 返回ACK給生產者 MQ push 消息給對應的消費者,然

原创 springboot:自定義參數解析HandlerMethodArgumentResolver

自定義解析器需要實現HandlerMethodArgumentResolver接口,HandlerMethodArgumentResolver接口包含兩個接口函數: public interface HandlerMethodArgum

原创 java使用註解進行excel導入、導出

之前在項目中有遇到excel導入、導出的功能,起初做的時候在網上找了一些類似的例子,功能是實現了,但是總感覺代碼太過於臃腫,不夠靈活,每次進行導入導出的需要寫一長串代碼感覺非常不爽,於是結合網上和自己的理解寫了以下博客! 使用的第三方ja

原创 java基礎篇(一)java數據類型、轉換、進制轉換

java基礎篇day1,java數據類型、轉換、進制轉換一、java數據類型劃分1、數值型:1.1. 整形1.2.浮點類型:2、 字符型:3、布爾型:4、引用類型:二、基本數據類型之間的轉換1、自動類型轉換:範圍小→範圍大2、強制

原创 springBoot:HandlerInterceptor攔截器的使用 ——(二)

原文:https://blog.csdn.net/zhibo_lv/article/details/81699360 在上一篇博客已經介紹了HandlerInterceptor的基本用法這裏就不重複了詳見:SpringBoot之Handl

原创 Springboot中搭建使用Guava cache(方式一)

  概述   緩存是日常開發中經常應用到的一種技術手段,合理的利用緩存可以極大的改善應用程序的性能。   Guava官方對Cache的描述連接   緩存在各種各樣的用例中非常有用。例如,當計算或檢索值很昂貴時,您應該考慮使用緩存,並且不止