繁体   English   中英

您正在创建太多 HashedWheelTimer 实例

You are creating too many HashedWheelTimer instances

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在使用 java sdk:

compile(group: 'com.azure',  name: 'azure-cosmos', version: '4.8.0')

在蔚蓝的函数中。 不知道上面的错误是从哪里来的:

您正在创建太多 HashedWheelTimer 实例。 HashedWheelTimer 是一种共享资源,必须在 JVM 中重用,因此只创建少数实例。

1 个回复

看,这不是您期望的完整答案 - 这是尝试提供帮助,也许它会给您任何想法如何进一步处理这个非常罕见的错误..

我认为这部分有一个错误:报告ReportTooManyInstances https://github.com/Azure/DotNetty/blob/4a76e624580e0005257513fce1c69555294763f5/src/DotNetty.Common/Utilities/HashedWheelTime257Ls.

  static void ReportTooManyInstances() =>
        Logger.Error($"You are creating too many {nameof(HashedWheelTimer)} instances. 
  {nameof(HashedWheelTimer)} is a shared resource that must be reused across the process,so that only a few instances are created.");

在乞讨中有一个InstanceCountLimit = 64的硬编码: https : //github.com/Azure/DotNetty/blob/4a76e624580e0005257513fce1c69555294763f5/src/DotNetty.Common/Utilities/HashedWheel7Timer

    public sealed class HashedWheelTimer : ITimer
    {
        static readonly IInternalLogger Logger =
            InternalLoggerFactory.GetInstance<HashedWheelTimer>();

        static int instanceCounter;
        static int warnedTooManyInstances;

        const int InstanceCountLimit = 64;

如果您到达InstanceCountLimit ,则会有一段代码说明应该抛出ReportTooManyInstances

https://github.com/Azure/DotNetty/blob/4a76e624580e0005257513fce1c69555294763f5/src/DotNetty.Common/Utilities/HashedWheelTimer.cs#L105-L108

            if (Interlocked.Increment(ref instanceCounter) > InstanceCountLimit &&
                Interlocked.CompareExchange(ref warnedTooManyInstances, 1, 0) == 0)
            {
                ReportTooManyInstances();
            }

我还发现了什么(也许你会感兴趣):

Functions 最佳实践:优化 Azure Functions 的性能和可靠性

2 HashedWheelTimer实例过多

我在Clojure中使用http.async.client 1.1.0创建websocket客户端。 我的代码几乎是websocket客户端的确切示例 ,并添加了几行逻辑: 重新连接时断开连接,等待时间从几秒钟开始到一分钟左右为止增加 同步关闭先前的websocket(如果存 ...

3 关于“太多HashedWheelTimer实例”的Akka警告

当我的基于Akka 1.2的应用程序尝试使用超过500个左右的网格节点时,我收到以下警告: 我将更深入地研究Akka代码,以找出HashedWheelTimer的使用位置以及我应该做些什么来避免创建太多的。 虽然我正在这样做,但我想我会在这里发布警告以防专家中的一位专家可能能给我一两个 ...

5 你能用 Ktor 创建太多实例吗

来自OkHttp如果你创建了太多的 OkHttp 客户端实例,你最终会因为创建了太多的客户端而得到OutOfMemoryException 。 这也是您在使用 Ktor 时必须担心的事情吗? 我正在尝试从 okhttp 迁移到 ktor 以支持KMM并且对 Ktor 只有一点经验 ...

7 在Rails中,您是否需要小心创建太多模型?

我正在创建一个自定义的“立即购买”页面,该页面是用户,地址,销售,SaleLine和付款模型的组合。 要启动付款过程,我需要在回调中指定销售ID。 所以我的#new方法看起来像这样... 因此,关键点是在中间创建新销售记录的位置。 此页面不需要任何形式的登录或任何操作(因为从技术上 ...

8 Netty HashedWheelTimer可以处理多少次超时?

该文档说“每个车轮的默认刻度数(即车轮的大小)为512.如果要安排大量的超时,可以指定一个更大的值。” 这是否意味着默认它只能处理512次超时? 如果我想要10秒超时25秒(对于SockJS ),我应该将每个车轮的刻度数设置为什么值? ...

2013-01-10 03:03:58 1 2365   netty
9 TypeScript编译器实例过多

现在,我已经拥有许多大小适中的TypeScript库和应用程序,我注意到这些构建将我的多核8Gb开发机减少了。 原因是当我进行构建时,VS2012产生了大量的TypeScript编译器实例。 我想我必须在某个地方有一个愚蠢的VS2012 / TypeScript设置。 有什么建议么? ...

10 Android-MediaPlayer实例过多

我有一个包含12个按钮的活动,每个按钮都播放一个单独的文件。 我创建了12个不同的MediaPlayers,并使用如下正确的文件设置它们: 这仅适用于少数实例,但是现在它说我有太多实例,该程序将在发生任何事情之前崩溃。 我已经尝试仅创建一个MediaPlayer实例,并尝试像往常一样 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM