multithreading - 使用 apapche ignite 时无法删除 Web 容器(tomcat)中的 org.apache.ignite.internal.binary.BinaryThreadLocal 错误
问题描述
我们正在使用 apache ignite 作为我们的缓存解决方案之一,它工作得很好。但是在停止 web 容器时,与删除 ignite Thread Local 相关的许多错误正在显示服务器日志。因为我们没有在我们的应用程序中创建任何 ThreadLocal ,停止服务器时如何删除那些本地线程。下面提到了一些错误。
严重:Web 应用程序 [/webapp-name] 创建了一个 ThreadLocal,其键类型为 [org.apache.ignite.internal.binary.BinaryThreadLocalContext$1](值 [org.apache.ignite.internal.binary.BinaryThreadLocalContext$1@5826d221] ) 和类型为 [org.apache.ignite.internal.binary.BinaryThreadLocalContext] 的值(值 [org.apache.ignite.internal.binary.BinaryThreadLocalContext@47a32716])但在 Web 应用程序停止时未能将其删除。线程将随着时间的推移而更新,以尝试避免可能的内存泄漏。2021 年 4 月 8 日上午 10:39:34 org.apache.catalina.loader.WebappClassLoaderBase checkThreadLocalMapForLeaks 严重:Web 应用程序 [/webapp-name] 创建了一个 ThreadLocal,其键类型为 [java.lang.ThreadLocal](值 [java. lang.ThreadLocal@63b81d02]) 和 [org.apache.ignite.internal.marshaller.optimized 类型的值。OptimizedObjectStreamRegistry.StreamHolder](值 [org.apache.ignite.internal.marshaller.optimized.OptimizedObjectStreamRegistry$StreamHolder@58474af2])但在 Web 应用程序停止时无法将其删除。线程将随着时间的推移而更新,以尝试避免可能的内存泄漏。2021 年 4 月 8 日上午 10:39:34 org.apache.catalina.loader.WebappClassLoaderBase checkThreadLocalMapForLeaks 严重:Web 应用程序 [/webapp-name] 创建了一个 ThreadLocal,其键类型为 [java.lang.ThreadLocal.SuppliedThreadLocal](值 [ java.lang.ThreadLocal$SuppliedThreadLocal@67782fee])和 [org.apache.ignite.internal.binary.BinaryContextHolder] 类型的值(值 [org.apache.ignite.internal.binary.BinaryContextHolder@482bfe01])但未能当 Web 应用程序停止时将其删除。
解决方案
推荐阅读
- python - 基于列中连续计数的标志创建
- flutter - 如何在颤动中对齐堆栈内的元素?
- java - Javadoc - 从文档中的另一个点引用参数,例如 @link
- javascript - Vue选择点击选择器事件
- postgresql - Postgres 选择 2019 年的所有星期日
- discord.py - discord.py - 为什么我的 serverinfo 命令将所有者显示为“无”?
- python-3.x - ModuleNotFoundErro——但我已经在导入它
- java - 如何将无类型对象转换为 HashMap
- ios - 在其他项目共享的 iOS 通用项目中初始化 Firebase Crashlytics
- python - 当我们递归使用 yield 时,我们会创建 n 个迭代器吗?