gpt4 book ai didi

mod-wsgi - Python 中子解释器 API 的用途是什么?

转载 作者:IT老高 更新时间:2023-10-28 21:13:36 27 4
gpt4 key购买 nike

我不清楚为什么子解释器 API 存在,以及为什么它在 mod_wsgi apache 模块等模块中使用。它主要用于为在同一进程中运行的不同应用程序创建一个安全沙箱,还是一种允许多线程并发的方法?也许两者兼而有之?还有其他用途吗?

最佳答案

我想目的是创建单独的 python 执行环境。例如,mod_wsgi (Apache Python 模块)托管单个 Python 解释器,然后在子解释器中托管多个应用程序(在默认配置中)。

documentation 中的一些关键点:

  • 这是一个(几乎)完全独立的 Python 代码执行环境。特别是,新的解释器拥有所有导入模块的独立版本,包括基础模块 __builtin____main__sys
  • 加载的模块表 (sys.modules) 和模块搜索路径 (sys.path) 也是分开的。
  • 因为子解释器(和主解释器)是同一进程的一部分,它们之间的隔离并不完美——例如,它们可以(意外或恶意)使用 os.close() 之类的低级文件操作) 影响彼此打开的文件。
  • 由于(子)解释器之间共享扩展的方式,某些扩展可能无法正常工作;当扩展程序使用(静态)全局变量时,或者当扩展程序在其初始化后操作其模块的字典时,这种情况尤其可能发生。

关于mod-wsgi - Python 中子解释器 API 的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/755070/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com