打造自己的通信框架一——引言
前言
作業以來,一直在別人搭好的框架下做業務開發,翻過框架原始碼大致明白實作原理,但是僅僅做到這樣,很難去理解作者設計時的思量,也容易忽視一些技術細節,因此萌生了開發一套自己的框架的想法,這不是重復造輪子,只是為了把自己放到更高的角度去看問題,在設計的程序中帶動深度思考,第一個專案,我準備開發一套通信框架,并寫下一系列文章記錄自己在設計程序中的思考,取舍,
正文
目標
一套基于Netty的,簡單的MVC通信架構
-
支持WebSocket協議
-
自定義協議包格式
-
客戶端請求異步串行無鎖化
-
RPC支持(未來)
依賴和工具
-
JDK13
自己的專案,暫不考慮用到實際生產中,開發程序中會盡量多用新特性
-
Gradle
構建工具,Gradle的自定義腳本的能力比較方便,我的計劃中有有一個地方會用到,且Gradle腳本支持Groovy,可以借此學習下這個語言
-
Netty
超級優秀的通信基礎框架,
-
Protobuf
可用于通訊協議、資料存盤等領域的語言無關、平臺無關、可擴展的序列化結構資料格式
-
Groovy+Spock
測驗框架,寫起來比較簡潔
-
hu-tool
工具集,有很多好用的工具
-
Spring Boot
依賴管理,日志,監控等等,
-
lombok
省去get、set、constructor等等
-
IDEA
無敵IDE
功能優先級
按照以下順序開發
- 自定義與客戶端互動的協議格式
- Request,Response封裝
- NettyServer搭建
- 異步串行無鎖化
后記
大約一周前,我就已經開始撰寫這套框架了,但是寫了幾天之后發現這樣不太對,開發流程不對,經常寫著寫著發現這里不對那里不對,而且很多思考都被慢慢遺忘,反思了一下,決定結合文章去復盤整個設計程序, 共勉,
本文由博客群發一文多發等運營工具平臺 OpenWrite 發布
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/193866.html
標籤:Java
