首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python马达异步无法启动新线程

python马达异步无法启动新线程
EN

Stack Overflow用户
提问于 2022-07-18 07:08:10
回答 1查看 94关注 0票数 0

我使用异步向mongo写入,使用motor库。

当我没有几个bulk_writes时,它的工作没有问题。

然而,当我在同一时间有很多写的时候,我会得到一个异常RuntimeError: can't start new thread

代码语言:javascript
复制
File "/usr/local/lib/python3.7/site-packages/motor/metaprogramming.py", line 77, in method **unwrapped_kwargs)
File "/usr/local/lib/python3.7/site-packages/motor/frameworks/asyncio/__init__.py", line 74 in run_on_executor 
_EXECUTOR, functools.partial(fn, *args, **kwargs))
File "uvloop/loop.pyx", line 2702, in uvloop.loop.Loop.run_in_exector
File "/usr/local/lib/python3.7/concurrent/features/thread.py", line 160, in submit
   self._adjust_thread_count()
File "/usr/local/lib/python3.7/concurrent/features/thread.py", line 181, in _adjust_thread_count
   t.start()
File "usr/local/lib/python3.7/threading.py", line 847, in start
 _start_new_thread(self._bootsrap, ())
RuntimeError: can't start new thread

我试着改变maxPoolSize,但它没有起作用。

重要事实:

  1. 在我的本地计算机中,它工作时没有错误。然而,在gunicorn app:app --worker-class uvicorn.workers.UvicornWorker
  2. In Openshift中,我遇到了这个问题。在Openshift中的
  3. ,我通过Openshift运行我的代码,当我只有一个worker时,它可以工作。但是对于2+工作人员,我遇到了这个问题。2+
  4. 没有打开很多AsyncIOMontorClient连接,一次只有两个连接。使用几乎相同代码的
  5. ,我没有错误,但是在mongo的一部分mongo中没有asyncio支持,我的代码没有问题。

< code >G 230

EN

回答 1

Stack Overflow用户

发布于 2022-07-21 21:05:07

解决了。每个openshift吊舱有1024个线程的限制。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73018445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档