【发布时间】:2015-04-18 16:14:02
【问题描述】:
我有一个 python 进程作为 WSGI-apache 服务器。我在几台机器上运行着这个过程的许多副本。我的进程中大约有 200 兆字节是只读的 python 数据。我想将这些数据放在内存映射段中,以便进程可以共享这些数据的单个副本。最好的办法是能够附加到这些数据上,这样它们就可以是真正的 python 2.7 数据对象,而不是从 pickle、DBM 或 SQLite 之类的东西中解析出来。
有没有人有示例代码或指向已完成此项目的项目的指针可以分享?
【问题讨论】:
-
"我的进程中大约有 200 兆字节是只读的 python 数据。"我无法理解这部分。你能提供一些细节吗?什么数据类型?你尝试了什么?
-
您使用的是什么操作系统,您的进程是如何分叉的?如果您使用的是
vfork,那么孩子将共享其父母页面的副本,直到它仍然写信给他们。 -
为什么不使用 Redis 解决您的问题?
标签: python shared-memory wsgi uwsgi