Хабр Курсы для всех
РЕКЛАМА
Большая витрина: от крупнейших школ до частных авторов. Сравнивайте по цене, длительности, формату и выбирайте самый подходящий курс!
Вы наверняка заметили одно узкое место: file = self.request.files['file'][0]. Да, действительно, мы грузим весь файл изображения в память прежде чем записать его в базу. И вы наверное, подумываете что можно воспользоваться чем-то типа NginxHttpUploadModule. Однако теперь это можно сделать и средствами tornado: tornado.web.stream_request_body. Возможно, это мы и сделаем в одном из следующих уроков.
Современный торнадо, часть 2: блокирующие операции