原创 zookeeper簡介

ZooKeeper是一個分佈式的,開放源碼的分佈式應用程序協調服務,它包含一個簡單的原語集,分佈式應用程序可以基於它實現同步服務,配置維護和命名服務等。Zookeeper是hadoop的一個子項目,其發展歷程無需贅述。在分佈式應用中,由於工

原创 使用Astah製作UML時序圖

開篇語:做測試的難免看到開發畫出各種設計圖,都很羨慕,比如: 帥麼,漂亮麼,其實我們測試人員也可以輕鬆搞定這樣的圖哦哦哦~~~~~ 下面會對UML進行簡單介紹以及能夠畫出順序圖的工具Astah一、UML簡介:UML是Unified Mode

原创 volatile關鍵字詳解

Volatile的特徵:A、禁止指令重排(有例外) B、可見性Volatile的內存語義:當寫一個volatile變量時,JMM會把線程對應的本地內存中的共享變量值刷新到主內存。當讀一個volatile變量時,JMM會把線程對應的本地內存置

原创 http協議詳解

引言HTTP是一個屬於應用層的面向對象的協議,由於其簡捷、快速的方式,適用於分佈式超媒體信息系統。它於1990年提出,經過幾年的使用與發展,得到不斷地完善和擴展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的規範化工作正

原创 消息隊列應用應用場景與技術選型(ActiveMQ、RabbitMQ、RocketMQ、Kafka)

一、消息隊列概述消息隊列中間件是分佈式系統中重要的組件,主要解決應用解耦,異步消息,流量削鋒等問題,實現高性能,高可用,可伸縮和最終一致性架構。目前使用較多的消息隊列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaM

原创 分佈式系統一致性(ACID、CAP、BASE、二段提交、三段提交、TCC、冪等性)原理詳解

1 背景一致性是一個抽象的、具有多重含義的計算機術語,在不同應用場景下,有不同的定義和含義。在傳統的IT時代,一致性通常指強一致性,強一致性通常體現在你中有我、我中有你、渾然一體;而在互聯網時代,一致性的含義遠遠超出了它原有的含義,在我們討

原创 分庫分表中間件TDDL解析

前言在開始講解淘寶的 TDDL(Taobao Distribute Data Layer) 技術之前,請允許筆者先吐槽一番。首先要開噴的是淘寶的社區支持做的無比的爛, TaoCode 開源社區上面,幾乎從來都是有人提問,無人響應。再者版本迭

原创 Java concurrent併發工具包用戶手冊

1. java.util.concurrent - Java 併發工具包Java 5 添加了一個新的包到 Java 平臺,java.util.concurrent 包。這個包包含有一系列能夠讓 Java 的併發編程變得更加簡單輕鬆的類。在這

原创 Java併發AQS詳解

一、概述  談到併發,不得不談ReentrantLock;而談到ReentrantLock,不得不談AbstractQueuedSynchronizer(AQS)!  類如其名,抽象的隊列式的同步器,AQS定義了一套多線程訪問共享資源的同步

原创 mysql單列與多列索引使用規則淺析

很多時候,我們在mysql中創建了索引,但是某些查詢還是很慢,根本就沒有使用到索引!一般來說,可能是某些字段沒有創建索引,或者是組合索引中字段的順序與查詢語句中字段的順序不符。看下面的例子:假設有一張訂單表(orders),包含order_

原创 Java靜態代理與動態代理(JDK、CGLIB實現)

 一:代理模式(靜態代理)          代理模式是常用設計模式的一種,我們在軟件設計時常用的代理一般是指靜態代理,也就是在代碼中顯式指定的代理。          靜態代理由 業務實現類、業務代理類 兩部分組成。業務實現類 負責實現主

原创 Google Guava集合庫API探究

Guava:谷歌開發的集合庫,通過build path->Add External JARs 把guava.jar包加進去。 版本控制工具:1.CVS 2.SVN 3.git 所以需要下載git客戶端。 import com.googl

原创 RPC框架dubbo架構原理及使用說明

一、Dubbo是什麼官方定義DUBBO是一個分佈式服務框架,致力於提供高性能和透明化的RPC遠程服務調用方案,是阿里巴巴SOA服務化治理方案的核心框架,每天爲2,000+個服務提供3,000,000,000+次訪問量支持,並被廣泛應用於阿里

原创 JVM優化實戰

1 GC相關內存1.1 內存劃分1.1.1 堆(Heap)存放 new MyClass() 的對象,是GC的主要區域,-Xms / -Xmx 分別是堆的初始容量、最大可擴展容量,建議初始值設置爲最大值,以免反覆擴展或縮減的開銷;新生代(Yo

原创 使用Astah製作UML時序圖

開篇語:做測試的難免看到開發畫出各種設計圖,都很羨慕,比如: 帥麼,漂亮麼,其實我們測試人員也可以輕鬆搞定這樣的圖哦哦哦~~~~~ 下面會對UML進行簡單介紹以及能夠畫出順序圖的工具Astah一、UML簡介:UML是Unified Mode