Найти - Пользователи
Полная версия: Django Thread
Начало » Django » Django Thread
1
pyOut
Приветствую Python-сообщество.

Хочу задать вопрос следующего содержания. Хочу сделать примерно следующий функционал. Нужно чтобы при старте сервера включалась очередь которая обрабатывалась когда в нее что-то поступало. Как мне такое организовать? Что и от куда лучше класть чтобы такое работало.

Для наглядности приведу предполагаемый код.
Очередь будет примерно следующего содержания:
class ImportThread(Thread):
def __init__(self, import_product_query):
Thread.__init__(self)
self.import_query = import_query
self.total_imported = 0

def run(self):
time.sleep(10)
while True:
if self.import_query.total() > 0:
try:
import_data = self.import_query.get()
except Exception, e:
log.exception(e)
finally:
pass
time.sleep(0.5)
else:
time.sleep(10)

def get_status(self):
return (self.import_query.total(), self.total_imported)
Поток следующего:
class ImportQuery(object):  

def get(self):
pass

def total(self):
pass

def total_imported(self):
pass

def get_status(self, company_id, key_uniq=None):
pass
Evg
может лучше по крону?
pyOut
lorien, что за софт? Это что-то Джанговское?
slav0nic
pyOut
http://celeryproject.org/

или банальный крон, что есть проще. Ибо “Simple is better than complex.”
pyOut
slav0nic, на сколько крон будет более эффективен/не эффективен по сравнение с тем же celeryproject?

Если пользоваться кроном то мне надо будет проверять тред на наличие поступивших в него потоков каждую секунду. Правильно?
slav0nic
ну каждую секунду - глупо, но в целом да, я не знаю какие у тебя задачи и на сколько это критично.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB