sim3x: хороший код - код пригодный для повторного использования. Никогда не знаешь, где, когда, а иногда и кем будет применяться библиотека, django app или движок сайта.
sim3x: надо писать совместимый код или не надо, а также популярные мои проекты или нет - вопросы никак не влияющие на ложность вашего утверждения. Не вводите в заблуждение молодых программистов.
sim3x: у меня немало проектов, которые работают как с 2.7 так и 3.5. Надо просто точно понимать разницу между 2 и 3 питоном и уметь писать совместимый код.
Sushkov: multiprocessing - к потокам не относится. Как следует из названия, это "многопроцессность". Библиотека запускает для каждой задачи отдельный процесс интерпретатора.
StasShk: параметр related_name='images' поля ForeignKey задаёт обратную связь. Фреймворк создаст в экземпляре класса Product атрибут images, содержащий менеджер модели ProductImage.
Сергей Горностаев
@sergey-gornostaev Автор вопроса, куратор тега Django
Roman Kitaev: спасибо за то, что натолкнул меня на мысль. Я её развил. Разбиваю данные на куски и скармливаю потокам gevent, которые заливают их в базу в контексте транзакции.