原创 MySql實戰之MySql的日誌模塊

MySQL的日誌模塊:     1. redo log的概念是什麼? 爲什麼會存在?     redo log 是innidb引擎自有的, 先把操作寫進日誌, 防止數據庫發生異常重啓,保證安全崩潰    2. 什麼是WAL(write-a

原创 擴展Alibaba P3C 實現自定義代碼規範檢查

P3C (源碼地址: https://github.com/alibaba/p3c ):          一款代碼規範的檢查工具,有對應的ide插件,能在編碼過程中對設置的規則進行提示,可以針對公司編碼規範對它原來基礎上做了進一步的拓

原创 三點一刻的時候, 時針和分針的夾角是多少?

最近看一篇文章, 覺得有一個很有趣的問題, 所以記錄一下 !   三點一刻的時候, 時針和分針的夾角是多少?  我當時的想都沒想回答道 0 度, 反過來看了一下手錶感覺不對勁, 然後仔細看了一下問題 !  1: 三點一刻,   也就是3點

原创 基於ZK實現分佈式鎖

如何基於zk實現分佈式鎖? 1: 有序節點 2:臨時節點: 3:watcher 機制; 1,2點不做具體描述,具體操作查看官網文檔 基於ZK原生API和 Curator客戶端的watcher機制:  https://blog.csdn.n

原创 Zookeeper入門及實踐

    藉助代碼介紹zookeeper的增刪改查和zk的事件機制(Watcher)   如何註冊事件機制: 通過這三個操作來綁定事件 :getData、Exists、getChildren 如何觸發事件? 凡是事務類型的操作,都會觸發監聽

原创 深入理解Zookeeper

什麼是Zookeeper?        zookeeper 是一個開源的分佈式協調服務,由雅虎公司創建,是 google chubby 的開源實現。zookeeper 的設計目標是將哪些複雜且容易出錯的分佈式一致性服務封裝起來,構成一個

原创 常見的Redis面試題

 自己見解,可能有些還不是很全面,  具體需要請自行翻閱官網文章查看~~~ 1:什麼是redis,優點和缺點? redis: 高效的的key-value的存儲系統, 緩存 : 提升cpu的執行效率的 ,,解決低速io和高速應用之間的差異

原创 Redis持久化

    持久化: Redis的數據操作都在內存中,redis崩掉的話,會丟失。Redis持久化就是對數據的更新異步的保存在磁盤上,以便數據恢復 持久化的實現方式: 快照方式(RDB) 對數據在某時某點的一種完整備份。例如Redis RD

原创 LeetCode解題--島嶼數量

  給定'1's(土地)和'0's(水)的2d網格圖,計算島嶼的數量。島被水包圍,通過水平或垂直連接相鄰的土地而形成。您可以假設網格的所有四個邊都被水包圍。   廢話不多說, 直接上代碼 /** * 給定'1's(土地)和'0's(

原创 怎樣做一個更有價值的人

  想象有兩個世界, 一個世界中有你,一個世界中沒有你, 讓兩者之間的差異最大,那就是你人生的意義                                                                      

原创 深入分析volatile的實現原理

出處:http://www.cnblogs.com/dolphin0520/ 內存模型相關概念 大家都知道,計算機在執行程序時,每條指令都是在CPU中執行的,而執行指令過程中,勢必涉及到數據的讀取和寫入。由於程序運行過程中的臨時數據是存放

原创 深入分析synchronized的實現原理

記得剛剛開始學習Java的時候,一遇到多線程情況就是synchronized,相對於當時的我們來說synchronized是這麼的神奇而又強大,那個時候我們賦予它一個名字“同步”,也成爲了我們解決多線程情況的百試不爽的良藥。但是,隨着我們

原创 HashMap源碼解析--基於1.8

  基本概念   Map集合即Key-Value的集合,前面加個Hash,即散列,無序的。所以HashMap即散着的,無序的Key-Value集合. HashMap的基本數據結構是數組加鏈表的。就是這種結構  借鑑一張圖,侵權請告知 

原创 TCP協議的三次握手和四次揮手

TCP是什麼?TCP(Transmission Control Protocol 傳輸控制協議)是一種面向連接的、可靠的、基於字節流的傳輸層通信協議。簡單說,TCP 協議的作用是,保證數據通信的完整性和可靠性,防止丟包。多麼清晰的一張圖,

原创 java多線程併發相關的一道上機面試題

public class TestAlgorithm1 { /** * 數組A爲1,2,3,4,5,6,...52 * 數組B爲 26個英文字母 * 用兩個線程分別輸出12a23b....