新聞中心
概述
- 文檔(國內(nèi))[1]
- 文檔(國外)[2]
- 開源(Github)[3]
什么是farseer-go
基于Golang模塊化完整的基礎(chǔ)設(shè)施框架,創(chuàng)建現(xiàn)代化Web應(yīng)用和APIs。

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比黃驊網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式黃驊網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋黃驊地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。
使用目前最為流行的組件,并用模塊化技術(shù)來提供這些組件。
框架完美支持 DDD領(lǐng)域驅(qū)動(dòng)? 的戰(zhàn)術(shù)設(shè)計(jì),如倉儲(chǔ)資源庫、應(yīng)用層事務(wù)、領(lǐng)域事件、應(yīng)用層動(dòng)態(tài)WebAPI。
它有一個(gè).net core[4] 成熟版本,已經(jīng)使用了10多年,非常棒
不用擔(dān)心框架會(huì)讓你依賴過多的包,farseer-go的組件都是獨(dú)立的包,不使用的包不會(huì)下載到您的應(yīng)用程序中
每個(gè)組件都是單獨(dú)的包,因此版本號(hào)也是單獨(dú)發(fā)布的
有什么特點(diǎn)?
- 統(tǒng)一配置?:所有的配置被整合到./farseer.yaml
- 優(yōu)雅:所有的模塊都遵循開發(fā)者體驗(yàn)優(yōu)先為原則。
- 模塊化:供了完整的模塊化系統(tǒng),使你能夠開發(fā)可重復(fù)使用的應(yīng)用程序模塊。
- 領(lǐng)域驅(qū)動(dòng):幫助你實(shí)現(xiàn)基于DDD的分層架構(gòu)并構(gòu)建可維護(hù)的代碼庫。
- 鏈路追蹤(下個(gè)版本推出):如果您使用框架中的Orm、Redis、Http、Grpc、ES、MQ、EventBus、Task、FSS,將隱式為您實(shí)現(xiàn)鏈路追蹤,并提供API請求日志、慢查詢。
結(jié)合FOPS[5] 項(xiàng)目(自動(dòng)構(gòu)建、鏈路追蹤控制臺(tái)、K8S集群日志收集)支持代碼無侵入的全鏈路實(shí)時(shí)監(jiān)控。
集成的組件
|
包名 |
描述 |
地址 |
|
fs |
基礎(chǔ)核心包 |
??https://github.com/farseer-go/fs?? |
|
collections |
數(shù)據(jù)集合 |
??https://github.com/farseer-go/collections?? |
|
webapi |
web api服務(wù) |
??https://github.com/farseer-go/webapi?? |
|
async |
異步編程 |
??https://github.com/farseer-go/async?? |
|
mapper |
對象轉(zhuǎn)換 |
??https://github.com/farseer-go/mapper?? |
|
cacheMemory |
本地緩存 |
??https://github.com/farseer-go/cacheMemory?? |
|
redis |
client |
??https://github.com/farseer-go/redis?? |
|
data |
數(shù)據(jù)庫ORM |
??https://github.com/farseer-go/data?? |
|
elasticSearch |
client |
??https://github.com/farseer-go/elasticSearch?? |
|
eventBus |
事件總線 |
??https://github.com/farseer-go/eventBus?? |
|
queue |
本地隊(duì)列 |
??https://github.com/farseer-go/queue?? |
|
tasks |
本地任務(wù) |
??https://github.com/farseer-go/tasks?? |
|
fss |
分布試調(diào)度client |
??https://github.com/farseer-go/fss?? |
|
utils |
工具集 |
??https://github.com/farseer-go/utils?? |
如何開始
main.go
package main
import "github.com/farseer-go/fs"
func main() {
fs.Initialize[StartupModule]("your project Name")
}
在main函數(shù)第一行,執(zhí)行fs.Initialize,開始初始化框架
運(yùn)行后控制臺(tái)打印加載信息:
2022-12-01 17:07:24 應(yīng)用名稱:your project Name
2022-12-01 17:07:24 主機(jī)名稱:MacBook-Pro.local
2022-12-01 17:07:24 系統(tǒng)時(shí)間:2022-12-01 17:07:24
2022-12-01 17:07:24 進(jìn)程ID:6123
2022-12-01 17:07:24 應(yīng)用ID:193337022963818496
2022-12-01 17:07:24 應(yīng)用IP:192.168.1.4
2022-12-01 17:07:24 ---------------------------------------
2022-12-01 17:07:24 加載模塊...
2022-12-01 17:07:24 加載模塊:webapi.Module
2022-12-01 17:07:24 加載模塊:domain.Module
2022-12-01 17:07:24 加載模塊:application.Module
2022-12-01 17:07:24 加載模塊:interfaces.Module
2022-12-01 17:07:24 加載模塊:data.Module
2022-12-01 17:07:24 加載模塊:eventBus.Module
2022-12-01 17:07:24 加載模塊:queue.Module
2022-12-01 17:07:24 加載模塊:infrastructure.Module
2022-12-01 17:07:24 加載模塊:main.StartupModule
2022-12-01 17:07:24 加載完畢,共加載 10 個(gè)模塊
2022-12-01 17:07:24 ---------------------------------------
2022-12-01 17:07:24 初始化完畢,共耗時(shí):1 ms
2022-12-01 17:07:24 ---------------------------------------
2022-12-01 17:07:24 [Info] Web服務(wù)已啟動(dòng):http://localhost:8888/
參考資料
[1]文檔(國內(nèi)): https://farseer-go.gitee.io/
[2]文檔(國外): https://farseer-go.github.io/doc/
[3]開源(Github): https://github.com/farseer-go/fs
[4].net core: https://github.com/FarseerNet/Farseer.Net/
[5]FOPS: https://github.com/FarseerNet/FOPS
本文轉(zhuǎn)載自微信公眾號(hào)「 程序員升級打怪之旅」,作者「王中陽Go」,可以通過以下二維碼關(guān)注。
轉(zhuǎn)載本文請聯(lián)系「 程序員升級打怪之旅」公眾號(hào)。
當(dāng)前名稱:Farseer-Go,一個(gè)模塊化的完整基礎(chǔ)設(shè)施框架
網(wǎng)站路徑:http://fisionsoft.com.cn/article/coephjo.html


咨詢
建站咨詢
