Форум сайта python.su
Доброго дня!
Есть задача сохранять разом большое количество урлов (50).
Если использовать urllib.request.urlopen в цикле, то 50 сайтов сохраняются в массив примерно за 25-30 секунд. Если использовать multiprocessing, то за 4 секунды.
Но, джанго с мультипроцессингом не дружит, баг достаточно давно существует, решается манкипатчингом. но это костыль и я его использовать не хочу.
Есть ли какой то еще вариант в котором можно быстро это делать?
Заранее спасибо!
Офлайн
Использовать multithreading, запустить сохранение урлов в отдельном потоке, например.
Офлайн
multiprocessing? он не дружит с джанго, появляется ошибка
Exception AttributeError: AttributeError("'_DummyThread' object has no attribute '_block'",) in <module 'threading' from '/usr/lib/python3.2/threading.py'> ignored Exception AttributeError: AttributeError("'_DummyThread' object has no attribute '_block'",) in <module 'threading' from '/usr/lib/python3.2/threading.py'> ignored
Офлайн
Можно использовать threading а не multiprocessing
Офлайн
Zverushkohttp://docs.python.org/2/library/threading.html
multiprocessing? он не дружит с джанго, появляется ошибка
Офлайн
plusplusСпасибо! переписал функцию, все оч просто и понятно, вечером попробую как будет дружить с джанго
http://docs.python.org/2/library/threading.html
http://docs.python.org/dev/library/concurrent.futures.html#threadpoolexecutor
Офлайн
Зачем оно в джанго проекте? Может сделать отдельным скриптом который стартовать через subprocess? Что хотите сделать?
Офлайн