是否在Web2Py的每个调用中解释代码?

Sta*_*ley 4 python performance caching bytecode web2py

如果是这样,有什么好处?(确保它会避免重启webserver).但这不是一个性能瓶颈吗?对于生产,是否可以直接从字节码跳过解释阶段(缓存)使web2py运行(第一个请求除外)?

mdi*_*rro 5

在web2py中,默认情况下,模型,视图和控制器中的所有代码(不是web2py代码,而不是模型,视图,控制器导入的模块中的代码)都会在每次请求时进行解释.这允许使用第三方Web服务器(例如apache),并且仍然能够在不重新启动的情况下立即看到代码中的更改.PHP的工作方式相同.性能损失可以忽略不计,因为解析代码的时间少于执行代码的时间.

无论如何,在管理界面中有一个"编译"按钮,它将字节码编译您的代码并将视图层次结构(扩展和包含的视图)折叠为每个操作的单个文件,并消除性能损失.它还允许您分发编译的代码字节码,而不会泄露源代码.许可证允许.