目前,我正在使用Jester编写Web应用程序,并希望通过捆绑所有静态资源(CSS,HTML,JS)来促进部署。
在Nim中执行此操作的最佳方式是什么?
答案 0 :(得分:3)
基本方法是使用staticRead(aka slurp)在编译时读取文件并将其作为程序中的常量。这可能会非常繁琐,因为您需要手动为每个文件执行此操作,或者在发送之前基于目录的当前文件生成包含大量这些.nim
调用的staticRead()
文件并使用这些文件变量
另一种方法可能是zip all files并让您的程序在运行时读取/解压缩它们。如果您只是想使用它来减少部署中的文件混乱,那么可以在不压缩的情况下创建zip,尽管您可以尝试快速压缩设置,这通常会提高整体速度(IO很慢,因此您的程序最终会花费更少的时间等待读取完成,CPU今天非常擅长解压缩。)
结合上述内容,您可能希望将zip文件嵌入到二进制文件中,并将其用作一种嵌入式虚拟文件系统。