首页 \ 问答 \ 在JVM中标识组件的内存(Identifing components' memory in the JVM)

在JVM中标识组件的内存(Identifing components' memory in the JVM)

我们有一些团队在一个JVM中运行服务器组件。

当出现内存问题时,我们需要知道每个组件已经占用了多少内存(或者应该归咎于OOME :-))。

是否有任何通用技术可以帮助识别每个组件的内存使用情况?

我知道内存转储及其分析工具,但有些情况下由于复杂的图形等原因,分析非常复杂。 我想知道是否有一些先进的技术,如私有堆或监控每个组件内存的有效方法。


We have a few teams running server components in one JVM.

When a memory issue arises, we need to know how much memory each component has taken (or who is to blame for the OOME :-) ).

Is there any general technique that can help identify each component's memory usage?

I'm aware of memory dumps and their analysis tools, but there are cases where the analysis is very complex because of complex graphs and such. I was wondering if there are some advanced techniques like private heaps or efficient way to monitor each component memory.


原文:https://stackoverflow.com/questions/36461075
更新时间:2023-08-27 11:08

最满意答案

你接近这个的方式是不对的。 使用java时间模块的要点是解析作为ISO标准的json字符串。

你拥有的字符串是你不使用java时间模块时得到的json,它主要用于字符串化所有成员字段和getter。

因为所有的java时间类都是不可变的,所以jackson不会被取消。

因此,为了继续使用非标准的json,你甚至不需要一个java时间模块。 您可能必须编写自定义deserailizer并从json字段重新创建LocalDate,LocalTime和ZoneOffset,并使用静态OffsetDateTime.of(LocalDate,LocalTime,ZoneOffset)来创建OffsetDateTime。


The way you're approaching this is not right. The point of using java time module was to parse the json string which is a ISO standard.

The string that you have is the json that you get when you don't use java time module, which is essentially to stringify all the member fields and getters.

As all the java time classes are immutable the jackson will not be deserailize.

So to keep using the non standard json you dont even need a java time module. You may have to write a custom deserailizer and recreate the LocalDate, LocalTime and ZoneOffset from the json fields and use the static OffsetDateTime.of(LocalDate, LocalTime, ZoneOffset) to create the OffsetDateTime.

相关问答

更多

相关文章

更多

最新问答

更多
  • 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
  • 如何通过引用返回对象?(How is returning an object by reference possible?)
  • 矩阵如何存储在内存中?(How are matrices stored in memory?)
  • 每个请求的Java新会话?(Java New Session For Each Request?)
  • css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
  • 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
  • xcode语法颜色编码解释?(xcode syntax color coding explained?)
  • 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
  • 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
  • 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
  • 西安哪有PLC可控制编程的培训
  • 在Entity Framework中选择基类(Select base class in Entity Framework)
  • 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
  • 电脑二级VF有什么用
  • Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
  • 金华英语角.
  • 手机软件如何制作
  • 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
  • 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
  • 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
  • Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
  • 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
  • python的访问器方法有哪些
  • DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
  • 在Ruby中对组合进行排序(Sorting a combination in Ruby)
  • 网站开发的流程?
  • 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
  • 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
  • 透明度错误IE11(Transparency bug IE11)
  • linux的基本操作命令。。。