原创 JAVA中不要用e.printStackTrace()

e.printStackTrace() 會導致鎖死?這僅僅是打印啊,怎麼可能?! 先別驚呼不可能,且聽我細細道來。 先看截圖1: 注意右下角區域,紅框部分。這塊內存是什麼呢?非堆!那麼,左邊是代碼緩存區內存,右邊紅框就是字符串池,常量,

原创 MySQL索引優化——索引優化

前言:索引優化的目的主要是讓索引不失效,本篇通過相關案例對索引優化進行講解。 0.準備 創建經典的tb_emp表。 DROP TABLE IF EXISTS `tb_emp`; CREATE TABLE `tb_emp` (

原创 Git 簡要使用

1.Git安裝 先下載Git,網站https://git-scm.com/downloads,下載相應的版本 雙擊下載好的exe程序進行安裝,安裝時下列選項中選擇第二項,剩餘一直next下一步即可,可按實際情況修改安裝路徑,安裝參

原创 五分鐘瞭解Mysql的行級鎖

三分鐘瞭解Mysql的表級鎖 一分鐘深入Mysql的意向鎖 mysql鎖相關講解及其應用——《深究mysql鎖》瞭解鎖前,一定要先看這篇,瞭解什麼是MVCC,如果我們學習鎖,沒有MVCC的知識,理解起來會總覺得不明朗。本來我的

原创 虛擬機使用NAT模式連接網絡設置

虛擬機使用NAT模式連接網絡設置 1、使用ipconfig/all查看本地主機的ip、網關及路由服務器的DHCP的地址; 2、在虛擬機的網絡設置中選擇NAT模式;此模式爲給虛擬機分配一個IP,將虛擬機模擬成局域網中的一臺虛擬主機進

原创 MySQL優化——Order By關鍵字優化

在使用order by時,經常出現Using filesort,因此對於此類sql語句需盡力優化,使其儘量使用Using index。 1.準備 1.1 創建test表。 drop table if exists test; creat

原创 ssh免密碼登錄,公鑰登錄

SSH 是開源的,是用於遠程登錄的最爲可靠的網絡協議。系統管理員用它來執行命令,以及通過 SCP 協議在網絡上向另一臺電腦傳輸文件。 通過配置 SSH 免密碼登錄,你可以享受到如下的便利: 用腳本實現日常工作的自動化。 增強 Linux

原创 mysql鎖相關講解及其應用

  一、mysql的鎖類型 (1) 共享/排它鎖(Shared and Exclusive Locks) 共享鎖和排他鎖是InnoDB引擎實現的標準行級別鎖。 拿共享鎖是爲了讓當前事務去讀一行數據。 拿排他鎖是爲了讓當前事務去

原创 兩個系統之間數據同步

1.概述 本文所討論的數據同步是指分別部署的多套系統之間的數據同步。 數據同步可分爲三類:實時同步、定時同步、手動同步。 同步方案可分爲:數據庫同步、讀寫文件同步、直接調用接口同步。 2.數據同步 同步講究數據傳輸的時效性,要求對於數據的

原创 spring boot啓動原理

我們開發任何一個Spring Boot項目,都會用到如下的啓動類 @SpringBootApplication public class Application { public static void main(String[

原创 MySQL 技巧:如何實現樂觀鎖?

使用 MySQL 5.7 做測試,數據庫引擎爲 InnoDB,數據庫隔離級別爲可重複讀(REPEATABLE-READ),讀讀共享,讀寫互斥。在這個隔離級別下,在多事務併發的情況下,還是會出現數據更新的衝突問題。 先分析一下更新衝突的問題

原创 Redis AOF重寫導致的內存問題

一、問題說明 業務上接到報警提示服務器內存爆了,登錄查看發現機器剩餘內存還很多,懷疑是被OOM了,查看/var/log/messages: kernel: [25918282.632003] Out of memory: Kill pr

原创 Kali 更新源更換

因爲kali是國外的,所以一些軟件你要下載的話得從國外的網站下載,就會很慢,國內一些公司或者學校提供了國內的下載地址,所以我們需要更換更新源 一,命令: vim /etc/apt/sources.list 二、增加或替換掉source

原创 arthas源碼分析

arthas簡介 arthas 是Alibaba開源的Java診斷工具,基於jvm Agent方式,使用Instrumentation方式修改字節碼方式以及使用java.lang.management包提供的管理接口的方式進行java應用

原创 Java線上問題排查神器Arthas快速上手與原理淺談

前言 當你興沖沖地開始運行自己的Java項目時,你是否遇到過如下問題: 程序在穩定運行了,可是實現的功能點了沒反應。 爲了修復Bug而上線的新版本,上線後發現Bug依然在,卻想不通哪裏有問題? 想到可能出現問題的地方,卻發現那裏沒打日誌,