Python 3.x 云运行Qs::max instances+;并发性+;螺纹(gunicorn螺纹)
(我正在学习Cloud Run承认这与开发或代码无关,但希望一些GCP工程师能够澄清这一点) 我有一个PY应用程序正在运行-gunicorn+Flask。。。现在只需要PoC,这就是为什么需要最少的配置Python 3.x 云运行Qs::max instances+;并发性+;螺纹(gunicorn螺纹),python-3.x,google-cloud-platform,gunicorn,google-cloud-run,Python 3.x,Google Cloud Platform,Gunicorn,Google Cloud Run,(我正在学习Cloud Run承认这与开发或代码无关,但希望一些GCP工程师能够澄清这一点) 我有一个PY应用程序正在运行-gunicorn+Flask。。。现在只需要PoC,这就是为什么需要最少的配置 云运行部署具有以下标志: --max-instances 1 --concurrency 5 --memory 128Mi --platform managed guniccorn\u cfg.py文件具有以下配置: workers=1 worker_class="gthread" threa
云运行部署
具有以下标志:
--max-instances 1
--concurrency 5
--memory 128Mi
--platform managed
guniccorn\u cfg.py
文件具有以下配置:
workers=1
worker_class="gthread"
threads=3
我想知道:
1) max instances
::如果我要调整此值,是否意味着在需要时配置新的物理服务器机器?或者,该服务是否通过拉取一个容器映像并在同一台物理服务器机器上启动一个新的容器实例(docker run…
)来实现这一点,从而有效地与其他容器实例共享同一台物理机
2) 并发性
::一个运行的容器实例是否接收多个并发请求(例如,3个运行的容器实例处理5个并发请求)?还是每个并发请求都会触发启动新容器实例(docker run…
)
3) 最后,通过调整gunicornthread
设置,我能否有效地达到并发性
>5?例如,在这种情况下,5x3=15。。对于由3个正在运行的容器实例服务的ex.15并发请求,例如。?如果这是真的,那么调整线程
与调整云运行并发
有什么利弊
其他信息:
-它是一个IO密集型应用程序(而不是CPU密集型应用程序)。只需抓取HTTP请求并发布到pubsub/sub
非常感谢首先,在Stackoverflow上,一次问5件事的“鸡尾酒问题”是不合适的。今后请一次最多提一个问题
--concurrency=10
,则可以将容器路由为一次最多有10个飞行中请求。因此,请确保你的应用程序一次可以处理10个请求--并发设置是为了确保您在任何时候都不会收到超过5个对1个容器实例的请求
我还建议您在询问之前更彻底地阅读Office文档,也许还有一次几乎可以回答所有这些问题。谢谢您的建议。我看了这些链接,但没有得到满意的答案(很抱歉,我早就应该提到这一点)。实际上,您的评论现在很少向我澄清a)最大实例数与并发数之间的区别。。b)并发性与Gunicorn线程的关系。谢谢回答。