我有一个使用字典作为多个进程之间共享内存的Python应用程序:
REST API是使用Flask实现的。在使用pywsgi或者简单的Flask.run初始化Flask服务器时,一切都很正常。我决定加入gunicorn,现在当我从任何一个worker(即使只有一个正在运行)访问此共享字典时,就会出现错误:
from multiprocessing import Manager
manager = Manager()
shared_dict = manager.dict()
REST API是使用Flask实现的。在使用pywsgi或者简单的Flask.run初始化Flask服务器时,一切都很正常。我决定加入gunicorn,现在当我从任何一个worker(即使只有一个正在运行)访问此共享字典时,就会出现错误:
我一直在研究mmap、multiprocessing Listener和Client,但它们似乎都需要很多额外的工作。message = connection.recv_bytes(256) # reject large message
IOError: [Errno 35] Resource temporarily unavailable