在 mod_cml 已死,mod_cml 万岁 中,我曾暗示 mod_cml 即将消亡。随着 lighttpd 1.4.12 的发布,将有一个名为 mod_magnet 的新模块,它可以吸引每个请求并决定其后续执行。
如果您愿意,您可以通过 mod_magnet 实现我们当前的大部分模块,例如:
我们没有像为 mod_cml 的第一个版本那样发明一种新语言,而是再次使用了 Lua。Lua 是一种简单、高性能、轻量且可扩展的语言。这与您的 lighty 对 Web 服务器的意义非常相似。
感谢 #lua IRC 频道,特别是 rici 的帮助,我得以在周末实现了基本的 magnet 引擎。在 http://p.caboo.se/12501 您可以看到代码缓存的第一个版本,正是它赋予了 mod_magnet 如此高的性能。
虽然 lighty 中的大部分配置需要重启服务器才能生效,但 mod_magnet 在您更改脚本时会自动重新加载它们。脚本本身只编译一次,并在每个请求上执行。得益于 Lua 的架构,实现此字节码缓存非常容易,而 mOo 则花了一些时间才让他的 XCache 与 PHP 良好配合。
那么现在呢?快来试试吧,获取 1.4.12 版本(或最新的预发布版本),然后告诉我们您的感受。