Django протоколирует безопасность потока между сервером и командами - PullRequest
0 голосов
/ 30 октября 2018

Я хочу, чтобы выходные данные с моего сервера Django, а также команды управления Django были записаны в один файл. Это легко настроить в файле settings.py, но есть ли проблемы с безопасностью потоков или блокировкой файлов с помощью команды управления (которая запускается из командной строки), пытающейся записать в тот же файл, что и основной сервер Django ( работает от WSGI)? Есть ли какие-либо проблемы с этой настройкой, работающей под Windows против Linux или других операционных систем?

Если есть разные ответы в разных версиях: питон 3.4 Джанго 1,11

Спасибо!

Ответы [ 2 ]

0 голосов
/ 24 февраля 2019

Альтернативой может быть отправка всей регистрации в очередь (например, очередь Redis), а затем один процесс считывает очередь и записывает записи в файл. Здесь можно подумать гораздо больше, поэтому это может подходить или не соответствовать вашим потребностям, но это устранит блокировку файлов.

0 голосов
/ 24 февраля 2019

Согласно Python 3 Ведение журнала поваренной книги : «запись в один файл из нескольких процессов не поддерживается, поскольку в Python нет стандартного способа сериализации доступа к одному файлу между несколькими процессами»

Поскольку вход в Django, по-видимому, является пакетом регистрации Python по умолчанию, я могу только предположить, что он не предназначен для одновременного доступа с главного сервера и команд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...