#python-3.7 #gunicorn #gevent
Вопрос:
У нас есть служба планировщика, которая появляется в начале программы.
Мы переместили нашу базу кода с python2 на python 3.
Мы исправляем ошибки с гевентом перед вызовом потока планировщика.
Как только оружейный рожок начнется, скажем, с двух рабочих.
Код метода scheduler_service run() разветвляется и обслуживается всеми 3 потоками параллельно.
Мы хотим, чтобы с этим справлялся только один поток. В чем может быть проблема, как с python2, и без исправления обезьяны он работал нормально?
Комментарии:
1. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.
Ответ №1:
Именно так он и должен себя вести. Вам нужна одноэлементная ссылка, разделяемая между потоками, которая позволяет ведущему иметь приоритет. Обычно модель базы данных, которая отслеживает текущие сетевые потоки, с проверкой и логикой отработки отказа, если кто-то больше не регистрируется в качестве ведущего.