限制 Compojure 生成的线程数

发布于 2024-12-11 09:04:30 字数 167 浏览 0 评论 0原文

我正在 Heroku 上运行 compojure。每个进程的线程数限制为 100 个。因此,当我超过该限制时,我得到:java.lang.OutOfMemoryError:无法创建新的本机线程。 Compojure 使用的是码头环适配器。是否可以将服务器配置为一次只接受 servlet 的一百个线程?

I'm running compojure on Heroku. They have a limit of a 100 threads per process. So when I go over that limit, I get: java.lang.OutOfMemoryError: unable to create new native thread.
Compojure is using the jetty ring adapter. Is there away of configuring the the server to only accept a hundred threads to the servlet at a time?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苦行僧 2024-12-18 09:04:30

该解决方案来自 compojure google 群组 的 Chris Perkins。

(run-jetty app {:configurator #(.setThreadPool % (QueuedThreadPool. 5))})

这会在启动之前将 QueuedThreadPool(并发限制为五个线程)初始化到 jetty 实例。

The solution comes from Chris Perkins over at the compojure google group.

(run-jetty app {:configurator #(.setThreadPool % (QueuedThreadPool. 5))})

This initializes a QueuedThreadPool (with a concurrent limit of five threads) to the jetty instance, before it starts.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文