gpt4 book ai didi

python - 如何在两个端口或线程中运行 Flask

转载 作者:行者123 更新时间:2023-11-28 17:48:50 27 4
gpt4 key购买 nike

我想运行一个监听两个不同端口的 Flask 实例,我的意思是,一些操作在 8080 端口,另一些在 8090 端口。有什么办法可以做到这一点吗? O 也许在线程中运行两个 Flask 应用程序实例?

添加上下文:基本上,我需要模拟生产环境,其中核心功能在端口 8080 上,但由于某些安全限制,我需要为某些特定客户端的某些操作 (8090) 使用代理

我的意思是例如 8080

  • /repository/{id}

这个操作几乎被所有客户端使用,但是,一些特定的客户端需要使用代理。例如在 8090 上

  • /reposproxy?method="get"&resource="repository"&query="id="xxxx"

基本上,调用 8080。

此外,我尝试为 app.run() fork 或创建一个线程,但我无法成功运行。

最佳答案

我解决了使用多处理 python 功能的 Fork(process) 方法。我定义到 app Flask 然后运行处理

def info(title):
print(title)
print('module name:', __name__)
if hasattr(os, 'getppid'): # only available on Unix
print('parent process:', os.getppid())
print('process id:', os.getpid())


def startServer(inDebug, port):
print "Starting Main Mock Server"
app.run(debug=inDebug, port=port)


def startProxyServer(inDebug, port):
print "Starting JSONP Mock Server Proxy"
appJsonp.run(debug=inDebug, port=jsonpPort)


if __name__ == '__main__':
info('Main Line Starting')
p = mp.Process(target=startServer, args=(False, port))
p.deamon = True
p.start()
p1 = mp.Process(target=startProxyServer, args=(False, port))
p1.deamon = True
p1.start()
p.join()
p1.join()

关于python - 如何在两个端口或线程中运行 Flask,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13880707/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com