Python flask线程对我有用,但我想在我的应用程序中使用多进程,因为我需要运行2个进程,而且需要耗费大量时间。这是演示:
烧瓶中有两个API:'/'代表索引,'/ longtime'代表耗时任务,演示简短'time.sleep(20)'
def worker():
name = multiprocessing.current_process().pid
print name, 'Starting'
main()
print name, 'Exiting'
from web.fapp import app
def my_flask():
name = multiprocessing.current_process().pid
print name, 'Starting'
app.run(threaded=True)
print name, 'Exiting'
import multiprocessing
if __name__ == '__main__':
# main()
# multithread
worker_1 = multiprocessing.Process(name='gevent_task', target=worker)
flask_service = multiprocessing.Process(name='flask_test_app', target=my_flask)
flask_service.start()
worker_1.start()
以这种方式,烧瓶将无法在螺纹模式下工作。我怎样才能找到其他解决方案?
答案 0 :(得分:0)
您可以使用Flask and Tornado together。
如果您需要后台任务或日程安排,可以使用Flask + Celery + (Rabbitmq or Redis) as broker