如何在服务器上启动一个永远在线的Python解释器?
如果bash启动多个python程序,我怎样才能在一个解释器上运行它?
如何在跟踪bash请求数之后启动一个新的解释器,比如在X请求到python程序之后,应该启动一个新的解释器。
编辑:不是https://stackoverflow.com/questions/16372590/should-i-run-1000-python-scripts-at-once?rq=1
的副本请求可能会顺序涌入
答案 0 :(得分:3)
你不能让新的Python程序通过bash在同一个解释器上运行,每个程序总是有自己的。如果要限制运行的Python程序的数量,最好的方法是在服务器上运行Python守护程序进程,而不是在每个请求上通过bash创建新程序,您将发信号通知守护进程创建一个线程来处理任务。
答案 1 :(得分:0)
在python中永远运行程序:
while True :
do_work()
您可以查看传入请求的产生线程。看看threading.Thread class。
来自线程导入线程
task = new Thread(target=do_work, args={})
task.start()
答案 2 :(得分:0)
您可能想看看http://docs.python.org/3/library/threading.html和http://docs.python.org/3/library/multiprocessing.html; threading
会更轻量级但只允许一次执行一个线程(意味着它不会利用多核/超线程系统),而multiprocessing
允许真正的同时执行但可以有点如果您使用的是不使用轻量级子进程的系统,则轻量级不会比threading
轻,如果线程/进程花费大量时间进行I / O请求,则可能没有必要。