我开始使用go来提供动态html内容,解析模板,替换变量等等到目前为止一切都很好,我发现我可以创建一个单独的二进制文件并部署包含所有静态的单个文件使用go-bindata等软件包创建文件。
但在性能方面,最佳做法是什么?
如果我是对的,那么嵌入所有静态内容的单个二进制文件将导致文件大小更大。
只有在启动时才需要/依赖解析模板(*.tpl)
的二进制文件可能更小,但需要附带所有静态内容。
如果空间是唯一的区别,拥有一个二进制文件看起来就像某些情况下更舒适的方式,但不是该主题的专家,我想知道一些最佳实践,以关注性能
答案 0 :(得分:0)
我添加类似
的内容var templates = template.Must(template.ParseGlob("templates/*.html"))
在全局范围内,然后仅在启动时解析它们。
如果您在某个服务器上上传并运行您的应用程序,那么可能使用单独的文件会更方便,因为您可以使用rsync来避免上传自上次上传后没有更改的文件。
如果您只想分发一个可下载的可执行文件,那么将所有内容放在一个文件中会使事情变得更容易。