原创 Spring+Dubbo+Zookeeper框架搭建--<一>Zookeeper安裝

前言 DUBBO是一個分佈式服務框架,致力於提供高性能和透明化的RPC遠程服務調用方案,是阿里巴巴SOA服務化治理方案的核心框架。 以上是阿里巴巴官網對於DUUBO的定義,就幾天使用Dubbo的初步認識來看,dubbo的意義主要在於以下

原创 JVM概述

JVM是什麼 JVM全稱是Java Virtual Machine(Java虛擬機)。它之所以被稱之爲是“虛擬”的,就是因爲它僅僅是由一個規範來定義的抽象計算機。我們平時經常使用的Sun HotSpot虛擬機只是其中一個具體的實現(另外還

原创 ThreadLocal示例及源碼淺析

實現數據隔離 瞭解一個東西,我們當然要先問爲什麼要了解他。 在多線程的訪問環境下,我們都會考慮線程安全的問題,所謂線程安全,就是爲了確保多個線程訪問的資源能與在單線程訪問環境下返回的保持結果一致,不會產生二義性,也可以說是保證多線程安全訪

原创 Java集合歸納-<三>Map

Map概要 上一篇總結了Set集合的一些常用知識點,爲何緊接着總結Map呢? 因爲Map和Set在底層實現上可以說是一種包裝的關係,先看看Map的結構示意圖。 上圖中的兩個桶分別代表Map集合裏保存的兩組值,分別是Key值和Value值

原创 Java集合歸納-<一>集合概述

前言 Java的集合類可以說是我們編程中最常用的一種容器了,用來存放多個對象的引用,實現常用的數據結構,如隊列、棧等。常用的集合類有Set、List、Map、Queue(Java5增加),但是大多數程序員還是會習慣性的忽略Queue,而只

原创 Java NIO學習(二)SelectionKey詳解

書接上文 上一篇博客中的結尾講到將Channel註冊在某個Selector的管轄範圍之下: channel.register(selector, SelectionKey.OP_ACCEPT); 由這個register()方法的第二個參數

原创 Java集合歸納-<四>List

前言 昨天無意間翻看自己的博客列表的時候才發現,集合部分的總結居然還有List的一部分沒有記錄,真是大意了。於是立刻翻出之前的讀書筆記,稍作整理,今天特意來補上這部分。學習的事,無論大小都還是要有頭有尾。 List摘要 List在存儲元素

原创 Java NIO學習(三)Selector監聽事件+NIO服務器實例

書接上文 上一篇博客說了一下SelectionKey這個對象的一些常用屬性,爲這一篇文章的NIO服務器實例算是做了一些鋪墊。不過在展示服務端實例代碼之前,還要說幾點細節上的東西。 Selector如何選擇就緒的通道 //這個方法可能會阻塞

原创 類的加載機制

ClassLoader Java程序並不是一個原生的可執行文件,而是由許多獨立的類文件組成,每一個文件對應一個Java類。此外,這些類文件並非立即全部裝入內存的,而是根據程序需要裝入內存。ClassLoader專門負責類文件裝入到內存。

原创 Java NIO學習(一)NIO相關概念

Netty 與NIO Netty在各種應用場合聽過無數次了,對它的瞭解也僅侷限於知道Netty是一個NIO的框架,可以用於開發分佈式的Java程序。網絡編程正好也是自己比較薄弱的環節,所以需要好好整理一下散落的知識點,爲學習Netty打好

原创 CountDownLatch解析和應用示例

前言 在日常處理線程同步問題的時候我們經常聯想到的可能有下面幾種辦法: 1.synchronized關鍵字 2.Java5引入的java.util.concurrent.locks包的顯示鎖 3.CountDownLatch 今天要

原创 一個Redis配置文件redis.conf上的小問題:JedisDataException

問題來源 昨天因爲電腦上的VMware不小心升級版本後,虛擬機莫名其妙運行不起來了,折騰了一晚上沒搞定,索性重裝了VMware和ubuntu虛擬機,自然的,原來安裝在虛擬機上的一切服務都沒有了。 在安裝完Redis後,發現之前本地win

原创 JVM垃圾回收機制

範圍:要回收哪些區域 在JVM五種內存模型中,有三個是不需要進行垃圾回收的:程序計數器、JVM棧、本地方法棧。因爲它們的生命週期是和線程同步的,隨着線程的銷燬,它們佔用的內存會自動釋放,所以只有方法區和堆需要進行GC。 前提:如何判斷對象

原创 磨刀不誤砍柴工-Windows下MySQL日誌查看

緣起 近日在研究MyBatis的緩存機制,作爲前置條件,自然要了解一些JDBC的緩存機制,比如PreparedStatement就是JDBC緩存的一個體現,將預編譯的SQL語句緩存在服務端數據庫中,當然這是後話。 想要直觀的看到Prep