原创 (三)Mina源碼解析之IoFilter

本篇文章主要剖析Mina中的過濾器是如何實現的 首先還是引入一個簡單的完整的server端的例子,代碼如下 public class Server { public static void main(String[] args) {

原创 Hessian序列化對象之BasicSerializer(五)

在Hessian中所有的序列化對象和反序列化對象都是成對存在的,在接下來分析Hessian序列化對象的博客中,會成對分析,例如本篇分析BasicSerializer的同時也會分析BasicDeserializer 在Hessian中8個基

原创 (五)Mina源碼解析之編解碼器

Mina中的編解碼器通過過濾器ProtocolCodecFilter構造,這個過濾器有3個構造器,其中可以分爲兩類,一類需要一個ProtoCodecFactory,這個接口有兩個方法,分別是getDecoder()和getEncoder(

原创 Hessian源碼剖析(七)

本篇博客我們來看一下Hessian的server端是如何實現的,首先來看一下Server端Hessian的配置         下面是web.xml中的一段配置(web.xml文件是web應用特有的文件,Hessian的server端需要

原创 Hessian源碼解析(四)

上篇博客我們說了call()方法,這次我們來展開討論,call()方法是AbstractHessianOutput中的方法,該方法使用了模板方法設計模式,什麼是模板方法設計模式? 舉個例子: 我們將使用電腦分爲3步。打開電腦,使用,關閉電

原创 Hessian序列化對象之CollectionSerializer(六)

在Hessian中所有的集合類型都是通過CollectionSerializer對象來進行的序列化,爲什麼是所有的集合類型呢,讓我們看一下具體的代碼段,該代碼段是SerializerFactory類的loadSerializer方法中的一

原创 Java的LockSupport.park()實現分析

LockSupport類是Java6(JSR166-JUC)引入的一個類,提供了基本的線程同步原語。LockSupport實際上是調用了Unsafe類裏的函數,歸結到Unsafe裏,只有兩個函數: [java] view plai

原创 ThreadPoolExecutor原理與使用

ThreadPoolExecutor是java.util.concurrent包提供的基礎線程池,使用非常廣泛 讓我們來看一下線程池的使用和內部實現原理 下面是ThreadPoolExecutor的一個構造方法,最終所有其他構造方法都要調

原创 (一)Mina源碼解析之整體架構

        Apache Mina Server 是一個網絡通信應用框架,也就是說,它主要是對基於TCP/IP、UDP/IP協議棧的通信框架(當然,也可以提供JAVA 對象的序列化服務、虛擬機管道通信服務等),Mina 可以幫助我們快

原创 (四)Mina源碼解析之IoSession

本篇文章主要剖析IoSession的在mina中的作用,IoSession的繼承結構圖如下: 在Mina中所有的連接都被封裝成了IoSession(關於Mina是如何將連接封裝成IoSession的,請參見Mina源碼解析之IoServ

原创 Hessian源碼剖析(一)

      在剖析Hessian源碼之前我們首先來梳理一下Hessian解決了什麼問題,能在哪些場景中使用,解決的問題中有哪些是難點,哪些是我們應該重點關注的 一、Hessian解決了什麼問題      Hessian是一個rpc框架,

原创 (二)Mina源碼解析之IoService

在mina中,IoService提供基礎的I/O服務、管理IoSession,它是Mina框架中最重要的一部分,大部分基礎的I/O操作都是在IoService的實現類中被處理的 圖一 IoService有

原创 Hessian源碼剖析(二)

在使用Hessian框架時,我們將Hessian分爲客戶端client和服務端server,這兩個名稱會頻繁的出現在該系列的博客中         使用Hessian時,server端必須是依賴於容器的(比入tomcat,jetty或者自

原创 svn切分支與分支合併

SVN的標準目錄結構:trunk、branch、tags 目錄在SVN中並沒有特別的意義,這三個目錄反映了軟件開發的通常模式 trunk:主幹,是日常開發進行的地方 branches:分支,一些階段性的release版本,這些版本是可以繼

原创 ActiveMQ消息傳送機制以及ACK機制詳解

原文鏈接:http://shift-alt-ctrl.iteye.com/blog/2020182 AcitveMQ是作爲一種消息存儲和分發組件,涉及到client與broker端數據交互的方方面面,它不僅要擔保消息的存儲安全性,還要提供