我使用Jekyll来构建我的网站,并且开始需要相当长的时间(几分钟)来编译网站(600多个帖子)。我怀疑有些插件可能是罪魁祸首,但似乎有更好的方法来评测构建的性能,而不是简单地打开和关闭不同的插件和解析器。
构建过程中的最小输出不会给出任何提示——所有的时间都只是花在"构建站点"步骤中。我想我可以通过ruby-prof
运行jekyll脚本来获得一些想法,所以我在我的站点根目录中以jekyll.rb
的形式快速复制了jekyll剧本,并运行了
ruby-prof jekyll.rb
这个网站看起来构建得很好,但探查器只是被一个丑陋的核心转储阻塞了。
[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html
Aborted (core dumped)
有没有一种更智能的方法来描述我的网站的构建过程,并找出为什么它如此缓慢?
第二,有什么技巧可以加快编译时间吗?(例如,我在_plugins
中看到了_cache
目录的存在,但不知道它到底做了什么。我也看到了Jekyll的--auto
标志,但不明白如何配置它,使它总是重新编译某些页面,无论它们是否发生了变化(例如,推特插件每次都需要重新运行),而不重新编译未更改的帖子)。
如果有人想亲身体验一下,该网站的Jekyll来源于Github,自述中有一些关于其他gem依赖关系的注释。
尝试Ruby GSL
gem install gsl
http://rb-gsl.rubyforge.org/
应该有助于加快构建时间。