Джанго рассматривает безопасность потоков? - PullRequest
0 голосов
/ 08 июля 2011

У меня есть несколько функций просмотра, которые обрабатывают данные из удаленных источников.Во многих случаях эта обработка может занять более секунды, чтобы завершить.Будет ли одновременный доступ к этим функциям представления потенциально шифровать мои данные?

Кроме того, у меня будет постоянно запущенный фоновый поток, который будет заполнять мою базу данных.Этот фоновый поток будет вызывать некоторые из тех же библиотечных функций, которые будут вызывать мои функции просмотра.Это потенциальная проблема с безопасностью потоков?

Если да, каковы лучшие практики?Я предполагаю, что просто использование механизма блокировки Python будет работать, но есть ли лучшие подходы?

Спасибо!

-Travis

Ответы [ 3 ]

0 голосов
/ 08 июля 2011

Я не вижу, чтобы вы делали там что-нибудь, что могло бы вызвать проблемы с многопоточностью.Безопасность потоков больше похожа на то, что если вы хотите распараллелить обработку одного запроса, то вам нужно убедиться, что несколько потоков для одного запроса безопасны для потока.

В вашем случае каждый запрос обращается к данным иполучит свою собственную копию.

0 голосов
/ 08 июля 2011

Вы читаете / пишете данные из удаленных источников.Я бы попытался синхронизировать доступ или использовать транзакции на этих удаленных источниках, а не на клиенте!

0 голосов
/ 08 июля 2011

Для длительных процессов используйте Сельдерей .

Для длинного обзора вы можете создать экземпляр модели и запустить задачу сельдерея, которая заполняет его. Представление может отображать состояние этого экземпляра с самообновлением html до тех пор, пока не будут получены результаты.

...