原创 tips: mysql同步es

前提:MySQL字段名與ES字段名對應; 錯誤記錄: 1. ES字段名有大寫字母; 2. MySQL字段名不區分大小寫; 結果:失敗 分析:再說吧,反正沒成功,切回日誌數據源了

原创 Tomcat manager

一、介紹         Tomcat manager是Tomcat自帶的、使用HTML界面的、管理Tomcat自身以及部署在Tomcat上的應用的web應用。         參考官網:http://tomcat.apache.org/

原创 wireshark與fiddler對比 on mac

0. 前言       通用的抓包工具選擇不多,幾年前就已經形成穩定局面,如今也不再有新產品/新特性出現。故本文從可用性上對比wireshark和fiddler,前者是目前全世界最廣泛的網絡封包分析軟件之一,免費且開源,後者是是一個htt

原创 傳送帶:AOP原理

概述:代理模式(對目標對象調用函數的上下文增強,無須侵入目標函數),容器實際使用的是對象的代理類; 代理類的生成有以下三種方式: 靜態代理:AspectJ 原理:編譯時織入切面代碼,生成新增強後的代理類;(寫死型) 動態代理:Spring

原创 關於hashmap多線程死鎖的總結

1. 前提 鏈表,是基本數據結構; resize方法,操作了線程的共同資源; 2. 根本     hashmap死鎖主要是一個線程執行transfer過程中,被另一個線程改變了鏈表元素(共同資源)的指針指向; 3. “方法論” 多線程不安

原创 springboot starter原理總結

1. 關鍵特性 引入依賴 自動配置 2. 引入依賴 將常用依賴進行組合分類,打包提供給具有相應特性的工程; "它使用了maven和gradle的依賴傳遞方案,starter在自己的pom.xml文件中聲明瞭多個依賴。……一個starter

原创 jdk中的鎖

jdk中的鎖分爲兩種:synchronized關鍵字和lock接口。 synchronized原理涉及三種鎖概念:偏向鎖、輕量級鎖、重量級鎖,本質是個鎖升級(膨脹)的過程,由此保證了synchronized關鍵字當

原创 關於fullGC的總結

1. 描述 相對的是youngGC 源於Java堆的內存結構:分代,新生代和老年代 fullGC即在新生代和老年代都進行垃圾回收 2. fullGC的影響 GC過程中導致服務不可用,降低吞吐率 3. 如何降低fullGC帶來的影響 ful

原创 ConcurrentHashMap小總結

一、誕生之初 ConcurrentHashMap的目標是實現高併發,高吞吐量的hashmap。(引用自:https://www.jianshu.com/p/bf5926b6dcde) 二、解決的問題 要實現高併發、高吞吐量,要解決兩個問題

原创 [轉] Spring框架下向異步線程傳遞HttpServletRequest參數的坑

原文鏈接:https://blog.csdn.net/kid551/article/details/88703414 原因:主線程退出時,有清空request對象的動作,跟GC沒關係(仍被子線程引用,子線程使用前不可能被回收),故導致子線

原创 適用場景:All kinds of GCs

一、 各版本jdk默認垃圾收集器 jdk7~8:Parallel Scavenge、Parallel Old; jdk9~12:Garbage First; 二、適用場景 拋開原理不講,一張圖很清楚了:(引用:https://shipil

原创 postman tests腳本

背景 某功能模塊的服務端主要功能是對接算法和前端,關鍵是保持二者數據結構一致,避免字段拼寫錯誤、字段類型錯誤等約定問題發生;(消費者驅動的測試) 服務端與算法不在一個團隊,不方便使用契約測試的pact框架; 故爲了保證算法輸出的質量,使用

原创 hexo博客搭建(beantech主題),操作指南(Mac)

推薦參考 https://zhuanlan.zhihu.com/p/35668237 http://lijiankun24.com/Mac%E4%B8%8BHexo%E5%92%8CGitHub-Pages%E6%90%AD%E5%BB%

原创 java線程池應用相關技術點總結

1. JSONArray、JSONObject是非線程安全的,這是因爲它們的底層分別默認是Arraylist和HashMap,非線程安全;多線程中使用它們的put/add操作等需要同步; 2. JSONArray底層默認是Arraylis

原创 GC日誌可視化分析 & JVM狀態可視化 工具整理

目錄   一、GC日誌可視化分析工具     1. 概述     2. GCeasy     3. GCPlot     4. JClarity     5. GcViewer 二、JVM狀態可視化(JVisualVM)     1. 概