天天看點

motan源碼閱讀筆記

之前學過一段時間java,但是使用的時候很c++化。目前公司有項目要用到java,是以找一份代碼在看一下。

于是乎找了一個很熟悉的領域網絡程式設計。看看java是如何封裝和使用的。

motan使用的第三方庫

1)使用Hessian2序列化反序列化

2)使用netty作為transport

motan的特色

1)一個網絡架構

2)提供了rpc服務,封裝了一些HA、服務發現、摘除

3)提供很多切換開關

4)支援opentracing

5)各子產品支援利用SPI添加功能.

motan的劣勢

1)netty是傳說中的zero-copy架構,但是motan裡面對記憶體有多次拷貝。收一個完整的包時候拷貝了一次,Decode的時候,又拷貝了一次.

2)motan不是雙向架構,req-res類架構。比如做向服務端向用戶端推送消息不适合

3)

需要學習的

1)注解。注解怎麼用

2)java的泛型。比如<~><?><T>等用法

3)SPI怎麼用

4)mvn模組化塊

5)架構怎麼将transport抽象出來。變成庫無關型。

6)rpc的封裝

7)netty的使用。 Done

版權聲明:本文為CSDN部落客「weixin_34290390」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/weixin_34290390/article/details/92031763