Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 9002
  • Last Modified:

Is there any Difference between heap dumps, core dumps, thread dumps, memory dumps, java dumps, jvm dumps?

Is there  any Difference between heap dumps, core dumps,  thread dumps, memory dumps, java dumps, jvm dumps?
what is use these things when and how to take these dumps ? what processes are available other than kill -3 pid? are there any tools that track these dumps? what can be inferred from the dumps analysis? how to take these dumps when a server fails and pid no more available?
what is the difference between  open threads, idle threads, thread count, thread pool? how to find these w.r.t a server?
0
yuvasatta
Asked:
yuvasatta
  • 5
  • 4
4 Solutions
 
rajesh_balaCommented:
Well, too many questions in the same sections. :) ..Will try to answer.

1. Threaddump - These are taken to understand what threads are doing in JVM at any given point in time. It is done by sending ctrl+pause / kill -QUIT <pid>. This signal is handled by JVM and it dumps the thread information alnog with stack. This is mainly done to understand stuck threads, waiting threads, running threads and other such information. Sometimes lock information can also be obtained from this. But since JDK 1.5, lock information is getting tricker with threaddumps.

2. Core Dump/Heap Dump - When JVM exits, there is a high probability that it would create a core dump/heap dump in the directory. This is nothing but the heap representation of JVM. It can be opened easily with JProfiler, Yourkit etc and if JVM crashed due to memory leaks, this dump would be of great importance.

3. When no pid is available, its not possible to get the threaddump. no pid means that the process is not running...isnt that the case. :)

4. threads - The number of threads in the pool. Threadcount should give you the current threads in the thread pool. Thread pool is nothing but a way of maintaing a set of threasd so that it can be assigned whenever required (instead of creating a thread for every request which is time consuming and expensive).

Note: If possible, try to breakdown your questions and ask in multiple threads.
0
 
yuvasattaAuthor Commented:
Thanks for explanation,
It helped me a lot.
I will break my questions in my next postings, if any
can please explain about the open threads and idle threads?
0
 
rajesh_balaCommented:
Not sure where you refer by "open threads". But "idle threads" refer to the number of free threads in  the pool which can accept new requests.

Are you referring to the "busy threads" as open threads? "Busy threads" are the ones in the pool which are currently doing work
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
yuvasattaAuthor Commented:
can you please tell me how to find the open threads and idle threads w.r.t weblogic
0
 
rajesh_balaCommented:
Again for 8.x you have to refer to the documentation or use MBeans.

However, if its 9.x you can go to server --> monitoring --> threads

I believe something like this should be there in 8.x as well.
0
 
yuvasattaAuthor Commented:
Thank you
0
 
yuvasattaAuthor Commented:
I tried to find threads info from weblogic 8.x, but not able to.
any idea to find the threads in weblogic 8.x?
0
 
rajesh_balaCommented:
In weblogic 8.x, its fixed number of threads you configure in config.xml. You can cehck in that alternatively.
0
 
yuvasattaAuthor Commented:
ok thanks
0

Featured Post

[Webinar] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

  • 5
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now