use*_*212 1 python flask server
我有两个不同的 Flask 项目。我想在不同链接的服务器上运行它们。
目前,我一次看到了一个我可以看到正在运行的项目。
我尝试使用不同的链接在同一个端口上运行,也使用不同的端口。但我看到它一次只运行一个项目。
项目一
if __name__ == '__main__':
app.run(host="0.0.0.0", port=5001,debug = True)
Run Code Online (Sandbox Code Playgroud)
项目二
我试过跑步
export FLASK_APP=app.py
flask run --host 0.0.0.0 --port 5000
Run Code Online (Sandbox Code Playgroud)
还有这种方式
if __name__ == '__main__':
app.run(host="0.0.0.0", port="5000",debug = True)
Run Code Online (Sandbox Code Playgroud)
我最近在 Flask 中用我自己的网站做了一个并行线程操作。所以我完全理解你的困惑,尽管我会尽我所能解释这一点。
创建并行操作时,最好使用多线程。基本上,多线程用于拆分操作并在 CPU 上同时执行它们。虽然这必须得到 CPU 的支持,但如今大多数 CPU 都支持多线程。
无论如何,与应用程序。我初始化了 Flask 应用程序类以在所有线程之间共享数据,使用主线程作为内存处理程序。之后,我创建了页面。然后在初始化“if 语句”中(if __name__ == '__main__')
- 在其他语言中称为驱动程序类。我初始化并启动线程来完成应用程序的某些部分。
注意: Flask 不允许在不在主线程上时执行调试模式。基本上意味着您在调试应用程序时不能在 Flask 应用程序上使用多线程,这没问题。VSCode 有一个很棒的输出控制台,可以为我提供足够的信息来找出应用程序中的问题。虽然......有时线程错误查找可能会......有时很痛苦,但最好在调试时注意您的步骤。
另一件事是您仍然可以在 Flask 上操作线程功能。我喜欢在我制作的任何 Flask 应用程序上使用它,因为它可以为客户端提供更好的连接。例如,线程被禁用;客户端连接并保持主线程,主线程保持一毫秒然后释放它。已启用线程;允许客户端打开和释放多个请求。而不是所有客户端都通过一个线程进行管道传输。
为什么这很重要?好吧,如果客户端运行一个必须在本地主机上执行操作的繁重脚本,那么该页面的请求查询将花费更多的时间。作为回报,使客户端持有主线程管道,因此其他人无法连接。
我的问题代码:
import threading
from flask import Flask
# My typical setup for a Flask App.
# ./media is a folder that holds my JS, Imgs, CSS, etc.
app1 = Flask(__name__, static_folder='./media')
app2 = Flask(__name__, static_folder='./media')
@app1.route('/')
def index1():
return 'Hello World 1'
@app2.route('/')
def index2():
return 'Hello World 2'
# With Multi-Threading Apps, YOU CANNOT USE DEBUG!
# Though you can sub-thread.
def runFlaskApp1():
app1.run(host='127.0.0.1', port=5000, debug=False, threaded=True)
def runFlaskApp2():
app2.run(host='127.0.0.1', port=5001, debug=False, threaded=True)
if __name__ == '__main__':
# Executing the Threads seperatly.
t1 = threading.Thread(target=runFlaskApp1)
t2 = threading.Thread(target=runFlaskApp2)
t1.start()
t2.start()
Run Code Online (Sandbox Code Playgroud)
PS:通过执行python app.py
而不是
运行此应用程序
export FLASK_APP=app.py
flask run --host 0.0.0.0 --port 5000
希望这对您有所帮助,祝您开发愉快!
归档时间: |
|
查看次数: |
3376 次 |
最近记录: |