2

使用像 python(或 php)这样的脚本语言,事情不会像 .net 或 java 那样编译成字节码。

那么这是否意味着对于每个请求,它都必须遍历整个应用程序并解析/编译它?或者至少是给定调用堆栈所需的所有代码?

4

2 回答 2

5

使用像 python(或 php)这样的脚本语言,事情不会像 .net 或 java 那样编译成字节码。

错误:您import在 Python 中的所有内容都被编译为字节码(.pyc如果您可以写入包含您要导入的源代码的目录,则将其保存为文件——标准库和 c 通常是预编译的,当然取决于安装选择)。只需保持主脚本简短(导入一些模块并在其中调用函数),您将在整个过程中使用已编译的字节码。(Python 的编译器被设计得非常快——其含义包括它没有做很多其他合理的优化——但完全避免它仍然更快;-)。

于 2010-06-10T21:44:18.890 回答
3

当作为 CGI 运行时,是的,需要为每个请求加载整个项目。FastCGI 和 mod_wsgi 将项目保存在内存中并通过套接字与其通信。

于 2010-06-10T21:34:08.500 回答