新聞中心
基本介紹
資源管理是指可以將任意文件/目錄打包為GOlang源碼文件,并且編譯到可執(zhí)行文件中,隨著可執(zhí)行文件發(fā)布。

在弓長(zhǎng)嶺等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都做網(wǎng)站、成都網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),營(yíng)銷型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè),弓長(zhǎng)嶺網(wǎng)站建設(shè)費(fèi)用合理。
資源文件在程序啟動(dòng)時(shí)將會(huì)自解壓釋放到內(nèi)存中,供程序只讀訪問(wèn),可以將它當(dāng)做基于內(nèi)存的文件管理器。同時(shí),?GoFrame?的資源管理特性也支持將文件/目錄打包為獨(dú)立的二進(jìn)制資源文件使用。由于資源文件在程序運(yùn)行時(shí)是基于內(nèi)存的文件操作,沒(méi)有磁盤?IO?的開(kāi)銷,因此其文件操作效率非常高。
使用方式:
import "github.com/gogf/gf/v2/os/gres"
接口文檔:
https://pkg.go.dev/github.com/gogf/gf/v2/os/gres
組件特性
gres資源管理組件具有以下顯著特點(diǎn):
- 可將任意的文件/目錄打包為Go文件,支持自定義加解密。
- 打包的Go文件/資源文件自動(dòng)壓縮,常見(jiàn)?
css?/?js?等文件可達(dá)到50~90%的壓縮率。 - 支持對(duì)打包為Go文件的資源內(nèi)容,方便地導(dǎo)出到本地文件系統(tǒng)。
- 資源管理器內(nèi)容完全基于內(nèi)存,并且內(nèi)容只讀,無(wú)法動(dòng)態(tài)修改。
- 資源管理器默認(rèn)整合支持到了?
WebServer?、配置管理、模板引擎模塊中。 - 任意文件如網(wǎng)站靜態(tài)文件、配置文件等可編譯到二進(jìn)制文件中,也可編譯到發(fā)布的可執(zhí)行文件中。
- 開(kāi)發(fā)者可只需編譯發(fā)布一個(gè)可執(zhí)行文件,除了方便了軟件分發(fā),也為保護(hù)軟件知識(shí)產(chǎn)權(quán)內(nèi)容提供了可能。
與embed.FS的比較
從Golang v1.16版本開(kāi)始官方提供了靜態(tài)文件嵌入的?embed.FS?特性,整體底層設(shè)計(jì)和?gres?組件類似,壓縮比、執(zhí)行效率也差不多,只是在使用設(shè)計(jì)和工程化管理上有比較大的差別。?GoFrame?資源管理組件的功能更加豐富,框架的核心組件已經(jīng)完全對(duì)接了?gres?資源管理組件,并且在?GoFrame?提供的標(biāo)準(zhǔn)的工程化管理下能夠做到對(duì)開(kāi)發(fā)者無(wú)感知地使用資源管理特性,具體可以參考章節(jié) 資源管理-最佳實(shí)踐 。
未來(lái)?GoFrame?基礎(chǔ)框架底層不會(huì)考慮內(nèi)置對(duì)?embed.FS?組件的支持,?embed.FS?與?gres?組件可以獨(dú)立使用互不影響。
文章標(biāo)題:創(chuàng)新互聯(lián)GoFrame教程:GoFrame資源管理-基本介紹
當(dāng)前地址:http://fisionsoft.com.cn/article/cooeosp.html


咨詢
建站咨詢
