创新互联GoFrame教程:GoFrame资源管理-基本介绍

基本介绍

资源管理是指可以将任意文件/目录打包为GOlang源码文件,并且编译到可执行文件中,随着可执行文件发布。

在弓长岭等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、成都网站制作 网站设计制作按需网站建设,公司网站建设,企业网站建设,成都品牌网站建设,营销型网站建设,成都外贸网站建设,弓长岭网站建设费用合理。

资源文件在程序启动时将会自解压释放到内存中,供程序只读访问,可以将它当做基于内存的文件管理器。同时,​GoFrame​的资源管理特性也支持将文件/目录打包为独立的二进制资源文件使用。由于资源文件在程序运行时是基于内存的文件操作,没有磁盘​IO​的开销,因此其文件操作效率非常高。

使用方式:

import "github.com/gogf/gf/v2/os/gres"

接口文档:

https://pkg.go.dev/github.com/gogf/gf/v2/os/gres

组件特性

gres资源管理组件具有以下显著特点: 

  • 可将任意的文件/目录打包为Go文件,支持自定义加解密。
  • 打包的Go文件/资源文件自动压缩,常见​css​/​js​等文件可达到50~90%的压缩率。
  • 支持对打包为Go文件的资源内容,方便地导出到本地文件系统。
  • 资源管理器内容完全基于内存,并且内容只读,无法动态修改。
  • 资源管理器默认整合支持到了​WebServer​、配置管理、模板引擎模块中。
  • 任意文件如网站静态文件、配置文件等可编译到二进制文件中,也可编译到发布的可执行文件中。
  • 开发者可只需编译发布一个可执行文件,除了方便了软件分发,也为保护软件知识产权内容提供了可能。

与embed.FS的比较

从Golang v1.16版本开始官方提供了静态文件嵌入的​embed.FS​特性,整体底层设计和​gres​组件类似,压缩比、执行效率也差不多,只是在使用设计和工程化管理上有比较大的差别。​GoFrame​资源管理组件的功能更加丰富,框架的核心组件已经完全对接了​gres​资源管理组件,并且在​GoFrame​提供的标准的工程化管理下能够做到对开发者无感知地使用资源管理特性,具体可以参考章节 资源管理-最佳实践 。

未来​GoFrame​基础框架底层不会考虑内置对​embed.FS​组件的支持,​embed.FS​与​gres​组件可以独立使用互不影响。

网站栏目:创新互联GoFrame教程:GoFrame资源管理-基本介绍
文章来源:http://www.shufengxianlan.com/qtweb/news36/277286.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联