2

I could notice that 0.2vCore is allotted to API in Rruntime Manager, memory utilization is 63%.

When i check Heap utilization in Anypoint Monitoring is fluctuating between 200MB and 810MB and max Heap size mentioned 870MB this raised some doubts.

Runtime manager vCore and Anypoint monitor Heap Size are same ? I allotted 1 GB of vCore but in Heap graphs maximum heap size is showing in between 850-870 MB depends on time. my question is why it is not showing maximum available heap size is 1GB ?

Heap graph is not falling below 200MB, will it reach 0MB at any point ? or any kind of compile code occupies this 200MB space ?

I'm bit confused here, can anybody clarify here please..

Thanks..,

trincot
  • 317,000
  • 35
  • 244
  • 286
Thiru
  • 404
  • 1
  • 16
  • 44

2 Answers2

2

Runtime manager vCore and Anypoint monitor Heap Size are same ? if yes why only 870MB Heap is available instead of 1 GB(0.2vCore) allotted ?

A 0.2 vCore worker has a maximum heap size of 1 GB. It may be that the JVM didn't need to increase the actually used maximum size to the maximum available.

Heap graph is not falling below 200MB, will it reach 0MB at any point ? or any kind of compile code occupies this 200MB space ?

Any Java application will have some objects created, if not by the application by the JVM runtime itself, to execute. That means that it will have a baseline minimum heap usage. I don't think it is possible for any running JVM to have 0 MB usage of heap.

aled
  • 21,330
  • 3
  • 27
  • 34
  • Thanks aled, second answer is pretty clear and coming to first question. I allotted 1 GB of vCore but in Heap graphs maximum heap size is showing in between 850-870 MB depends on time. my question is why it is not showing maximum available heap size is 1GB ? – Thiru Nov 29 '19 at 05:53
  • What information does the graphic show exactly? Heap size, used heap, committed memory? – aled Nov 29 '19 at 13:49
  • It is Heap Used, heap used limit it is showing 855 MB today. My doubt is i allotted 1 GB(0.2 vCore) but why heap used limit is not showing 1 GB ? – Thiru Dec 02 '19 at 06:11
  • I can't check right now but I think heap used limit is the current size of the heap, heap use is how much heap is in use. The heap size can increase (or decrease) but can not exceed the heap maximum (1 GB in this case). – aled Dec 02 '19 at 13:34
0

Your application gets loaded into the JVM, objects are created and it will take up some memory. the 200 is your base line in this case. Then as more events gets created, the heap size increases, and as events expire, garbage collection comes into play and free up memory.

More details can be found in the following link.

https://help.mulesoft.com/s/article/Java-JVM-memory-allocation-pattern-explained

Siva
  • 98
  • 6
  • Thanks for your response but it completely describing about GC and Heap but i need clarification on mentioned two questions. could you please help in answering those two ? – Thiru Nov 28 '19 at 07:10