【发布时间】:2013-04-07 17:22:36
【问题描述】:
我有一个(初学者)问题。
我打算运行多个 web 应用程序(金字塔网络应用程序),并且我有一个公共库(我们称之为基础应用程序),两个 web 应用程序都可以使用它并且包括金字塔配置包括等。这些 web 应用程序最终将是单独的 wsgi脚本(可能)最终位于同一个 virtualenv 中。
我的问题是:如果我在这个库中猴子补丁类,python 中的隔离级别是什么(我目前正在动态更改该库中可能同时引用的某些类的 bases网络应用程序)。
例如:
在基础应用中:
class_from_baseapp(grandparent):
pass
在派生应用 2 中:
from baseapp import class_from_baseapp
#do some stuff with this class
#and have another bunch of child classes too!
class_from_childapp2(class_from_baseapp):
pass
在派生应用 1 中:
from baseapp import class_from_baseapp
# then what I do is I change this dynamically to
# class_from_baseapp(grandparent, mixin_class):
# by altering the class' __bases__
class_from_childapp1(class_from_baseapp):
pass
所以,我的问题是:如果它导入/使用与上述相同的类,这个猴子补丁是否会泄漏到其他 Web 应用程序(Web 应用程序 1)?我不知道python解释器中的进程和线程隔离是如何工作的。
【问题讨论】:
标签: python process pyramid wsgi monkeypatching