我们有一个配置为运行pyramid+sqlalchemy
应用程序的服务器modwsgi+apache2
我们在__init__.py
金字塔应用程序中有一些东西可以创建数据库并预填充一些测试用户和帐户。它类似于这里的金字塔食谱示例中的 initialize_sql 函数
Out apache config 看起来像这样(从某个地方复制并被黑):
WSGIApplicationGroup %{GLOBAL}
WSGIPassAuthorization On
WSGIDaemonProcess pyramid user=ubuntu group=staff processes=1 \
threads=4 \
python-path= VIRTUAL_ENV_SITE_PACKAGES
WSGIScriptAlias / WSGI_SCRIPT_PATH
<Directory /Users/chrism/modwsgi/env>
WSGIProcessGroup pyramid
Order allow,deny
Allow from all
</Directory>
困扰我们的是,它initialize_function
会被许多请求调用,而不是只被调用一次。我们不了解 apache 是如何工作的,也不了解我们在配置中做了什么。我们希望能够__init__.py
一次调用函数,仅此而已。有人可以解释 apache 的实际工作原理以及为什么金字塔__init__.py
一直在重新加载。还要解释我们如何确保__init__.py
不会重新运行每个请求
考虑分享关于相同内容的简单易懂的链接:)