0

我正在使用 mod_python 运行 Python 服务器,并且在配置变量方面遇到了一些问题。这实际上是两个问题合而为一,因为我认为它们高度相关:

  1. 我需要一种方法来配置运行时在 Python 中可用的变量。我目前只有一个模块,它设置了一些我导入到其他模块中的名称-值对,但我最近正在阅读PythonOption并且想知道使用它会获得什么优势。

  2. 我需要一种在服务器上存储状态的方法。我可以访问一个限制为每天运行 X 次的 API,一旦达到该限制,我需要恢复到我的(较少的)代码。我想知道如何跟踪一天中运行查询的次数。

我考虑过使用文件或数据库,但我担心让每个人都尝试一次访问同一个文件或行会减慢请求速度。有没有更好的方法在 mod_python 中进行设置?

4

2 回答 2

1
  1. UsingPythonOption允许您配置可能需要从服务器更改为服务器的内容。不过,我不会过多地使用它,因为弄乱 Apache 配置指令是一种痛苦(而且它需要重新加载服务器)。您可能会考虑使用类似 usingPythonOption来指定包含实际配置变量的设置文件的名称。(或者您可以像大多数框架一样在标准位置查找设置文件)

  2. 如果您真的不想考虑文件或数据库,请尝试memcached. 它基本上是一个非常简单的数据库(仅通过键获取、设置和清除),完全存储在 RAM 中,因此速度非常快。但是,如果您只需要存储一个计数器变量,您可能只需将其作为全局变量粘贴在 Python 模块中,除非您担心在重新加载模块时计数器会被重置。

于 2009-08-04T04:24:15.463 回答
0
  1. 我需要一种方法来配置运行时在 Python 中可用的变量。

    做 Django 做的事情。使用 Python 赋值语句的简单可导入脚本。

  2. 我需要一种在服务器上存储状态的方法。

    做 Django 做的事情。使用 SQLite3。

此外,阅读PEP 333并构建应用程序组件以支持 WSGI。这应该是一个相对较小的修订,以使现有代码具有正确的 WSGI 结构。

当您从 mod_python 切换到 mod_wsgi 时,您可以找到许多组件来为您做这些事情并减少您编写的代码量。

于 2009-08-04T10:20:49.710 回答