GoSkeleton基于 Gin 框架封裝的 Web 項目骨架
1.基于gin框架,一個單體項目開發(fā)所必要的絕大部分基礎(chǔ)功能、主線業(yè)務(wù)功能全部劃分成獨立模塊封裝。
2.創(chuàng)新性地改造一個request到response生命周期邏輯:Request: 路由——>(中間件)——>表單參數(shù)驗證器——>控制器(調(diào)度Model、Service等)——>Response。
3.基于用戶模塊,編寫了完善的用戶注冊、用戶登錄獲取token、中間件token鑒權(quán)以及用于用戶curd操作的示例代碼。
4.數(shù)據(jù)庫(Sqlserver、Mysql、Redis)封裝完善的連接池、無感知調(diào)用。
5.創(chuàng)新性地改造websocket實現(xiàn)邏輯,嚴格按照websocket協(xié)議,實現(xiàn)服務(wù)器到客戶端(主要是各種瀏覽器端)的隱式自動心跳包。
6.其他功能模塊(均寫有完善的示例代碼):
6.1全局容器、全局函數(shù)事件管理器
6.2基于yaml格式文件的統(tǒng)一配置
6.3文件上傳公共模塊
6.4 信號監(jiān)聽管道,用于監(jiān)聽各種退出信號,例如:interrupt、kill -9 、kill -15 、ctrl+c等保證程序退出時釋放各種資源,優(yōu)雅地結(jié)束。
最后說明:
1.該項目骨架我們將完善地封裝一個單體項目所需要的最基礎(chǔ)模塊,希望gin框架愛好者參與開發(fā)。
2.該項目骨架是從我們生產(chǎn)項目(基于gin框架)去除具體的業(yè)務(wù)邏輯獨立出來的,目前暫缺文檔,可以通過源碼閱讀,結(jié)合注釋快速上手開發(fā)自己的項目。
