Question

I'm relatively unexperienced in developing JAVA and I was hoping on getting some advice.

I have a modular JAVA server application setup in which a high level service that acts as a front-end interface which communicates with 8 lower level services.

In production, each service is hosted on its own machine.

I'm looking to profile a standard SE development environment which launches all instances locally. I am currently using eclipse and JVMmonitor.

My current workflow involves manually starting each service, followed by triggering the monitoring process on each service manually through eclipse. This workflow gets the job done, but I'm sure there is a more intelligent solution someone has come across. Most forum postings only solve monitoring one java instance.

Are there any other stand alone JAVA applications that anyone would suggest? I would like to avoid adding profiling code if possible.

Was it helpful?

Solution

Most profilers allow you to profile JVMs without the need to manually start the profiler.

For example, JProfiler calls this "offline profiling" and the integration wizards in the JProfiler GUI have an option for it:

enter image description here

Disclaimer: My company develops JProfiler.

OTHER TIPS

Use visualVM.You can profile from urs local computer to different servers . http://docs.oracle.com/javase/6/docs/technotes/guides/visualvm/applications_remote.html For profiling in different servers you need to define jstatd.all.policy file. For example if you want to monitor to different servers say s1,s2,s3 then in s1,s2,s3 server define jstatd.all.policy file and run statd - Virtual Machine jstat Daemon.Then from yours local computer you can monitor 3 s1,s2,s3 servers.

In very easy to configure it.

1.Run visualVm you can get eclipe pluging for it.

2.Run jstatd -J-Djava.security.policy=D:\jstatd.all.policy // location of yours jstatd.all.policy file in yours servers

3.In jstatd.all.policy define grant codebase "file:${java.home}/../lib/tools.jar" {

permission java.security.AllPermission;

};

4.Now connect to yours servers and monitor from local .

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top