#python #uwsgi
Вопрос:
Я нашел эту статью: https://pythonspeed.com/articles/python-multiprocessing/
Поскольку я испытывал симптомы, отмеченные там.
В своем коде на python я сейчас делаю:
def startup():
with get_context("spawn").Pool(4) as p:
p.map(_myfunc, work_items)
Однако, когда я запускаю свою программу (в Docker — на основе Debian) Я получаю:
getopt_long() error
/usr/local/bin/uwsgi: unrecognized option '--multiprocessing-fork'
У меня сложилось впечатление, что get_context
это локально только для этой функции; но, похоже, эта функция каким-то образом противоречит тому, как uwsgi
она хочет работать.
Есть какие-нибудь идеи, как действовать дальше?
Комментарии:
1. На какой версии python вы работаете и каков результат
import multiprocessing.spawn; print(multiprocessing.spawn.get_executable())
, если вы запустите ее в своей программе?2. Та же проблема здесь, похоже, что uwsgi не поддерживает запуск подпроцесса с помощью «порождения», а не «вилки». Есть какие-нибудь зацепки по этому поводу ?