当前位置: 首页 > 知识库问答 >
问题:

Spring启动执行器GC指标

沈枫涟
2023-03-14

我用的是Spring靴。为了监视JVM内存,我正在使用Spring Boot Actuator的/metricsendpoint。

我无法理解键实际上代表什么:

"gc.copy.count": 1933,
"gc.copy.time": 35972,
"gc.marksweepcompact.count": 12,
"gc.marksweepcompact.time": 7515,

有人能告诉我它们到底是什么吗?

CMS(并发标记扫描)和MarkSweepCompact相同吗?我应该使用CMS(并发标记扫描)吗?或者我应该使用哪种GC算法

共有1个答案

华修永
2023-03-14

Copy、MarkSweepCompact和ConvoltMarkSweep是不同的JVM收集器。

您可以在此处找到这些收集器的描述:http://www.fasterj.com/articles/oraclecollectors1.shtml

所有的垃圾回收机制算法,除了ConvoltMarkSweep,都是停止世界,也就是说,它们在运行时停止所有的应用程序线程——停止被称为“暂停”时间。ConvoltMarkSweep试图在后台完成大部分工作并尽量减少暂停时间,但它也有一个停止世界阶段,并且可能会失败到完全停止世界的MarkSweepCompact中。(G1收集器有一个并发阶段,但目前主要是停止世界)。

 类似资料:
  • 我们已经在几个项目中使用了Spring Boot,现在我们使用的是最新版本1.2.3。我们正在合并执行器。到目前为止,一切都很顺利,只是我们发现/health指示器[default]显示服务已关闭。事实并非如此。这些服务是通过数据源实现的。它可以调用其他SOAP或Rest服务。卫生服务部门在看什么来衡量一项服务是否下降?

  • 我想使用actuator为我的spring boot rest web服务实现自定义度量或统计信息,但我找不到简单的教程。例如: 如何显示某个控制器被调用了多少次以及填充了什么确切的参数字段? 我如何创建一个指标,当它的URL被调用时,它会运行某些查询并显示带有某些结果的json

  • 问题内容: 我一直在研究Spring / Spring MVC应用程序,并且希望添加性能指标。我遇到过Spring Boot Actuator,它看起来是一个不错的解决方案。但是我的应用程序不是Spring Boot应用程序。我的应用程序在传统容器Tomcat 8中运行。 我添加了以下依赖 我创建了以下配置类。 我什至可以按照StackOverflow另一篇文章的建议在每个配置类上添加 问题答案:

  • Spring Boot Actuator中存在一个错误,如果使用了某些属性,在暴露处的就绪endpoint和处的活动endpoint时不起作用。您会得到一个白标签错误页面。 此应用程序没有显式的/错误映射,因此您将其视为回退。 这些属性包括: 默认情况下,我需要使用管理端口,以便可以使用执行器/指标进行监控。因此,为了进行可靠的健康检查,我需要在主/应用程序端口上公开活动性和就绪性endpoint

  • 您可以将许多自定义运行状况指示器添加到Spring boot的执行器中,这非常棒,因为它们的总状态被认为是您的应用程序的运行状况。 有没有可能只查询其中一个指标呢? 对于一个复杂的应用程序,我有大约10个指示器来告诉我的应用程序总体运行状况,整个检查大约需要20秒。 有一些指标我想更频繁地点击,因为它们提供了对高吞吐量组件的快速响应。有可能以某种方式查询单个指标吗?

  • 有没有办法关闭执行器/千分尺中的一些返回的度量值?现在看着它们,我看到大约1000个,并想将它们缩减到精选的几个,比如100个,以便实际发送到我们的注册表。