我们遇到的问题是我们的非堆内存一直在增长.所以我们必须每隔3天重启我们的jee(java8) - webapp(正如你在这里的截图中看到的那样:来自非堆和堆内存的截图)
我已经试图找出填满非堆的东西了.但我找不到任何工具来创建非堆转储.你有什么想法我可以调查一下,找出哪些元素越来越多?
Java的版本
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)
Run Code Online (Sandbox Code Playgroud)
Tomcat的版本
Apache Tomcat Version 7.0.59
Run Code Online (Sandbox Code Playgroud) addRequestHeader (H.hContentType, "application/json")
Run Code Online (Sandbox Code Playgroud)
这是使用Network.HTTP.Simple包的一个例子,我已经看过几次了.如何将String传递给该函数作为其签名是:
addRequestHeader :: Network.HTTP.Types.Header.HeaderName
-> Data.ByteString.Internal.ByteString -> Request -> Request
Run Code Online (Sandbox Code Playgroud)
当我尝试这个,我得到的错误无法匹配预期类型'C8.ByteString'与实际类型'[Char]',所以我必须使用Data.ByteString.Char8.pack函数来使这项工作.为什么别人不这样做?有自动转换还是在这里发生什么?