如果我在Flask中使用processes
参数(application.run(processes=10)
),是否可以在处理N个任务后以某种方式指定终止进程?
基本上我想为N个请求重用一个资源,然后在N个调用之后通过终止当前进程并强制使用新进程替换它来重新创建它。该功能类似于使用multiprocessing.Pool
参数等于N的maxtasksperchild
。
答案 0 :(得分:1)
在N个请求之后杀死进程相关的任何情况下,您都不应该使用Flask开发服务器。 Use a real WSGI server in production,他们都有选择。
例如,使用gunicorn:
gunicorn --max-requests=N --workers=10 myapp:app