• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 780
  • Last Modified:

Server Crash due to memory outage

Hi,
    I have a problem in one application server running on windows 2000 Server. The Application is  deployed on the default server and the server crashes every two or three days. There are some java core files and heapdum 2000...phd files which are being dumped into the Appserver directory continuously and the files each of size nearing to 100 mb are dumped and once when the memory is filled out the Server Crashes. This is the present situation, what should be done to eradicate this issue ?


Pavan.
0
pavan_immadi
Asked:
pavan_immadi
1 Solution
 
yuseungkimCommented:
You need to increase heap size.

You can define initial heap size and maximum heap size from WebSphere administrative console.

Servers > Application Servers > [your_server_name] > Process Definition > Java Virtual machine

Check Verbose garbage collection
Put reasonable Initial Heap Size ( Unit is MBytes )
Put maximum Heap size which should be less than physical available memory ( Unit is MBytes )

Once you changed above configuration, you need to recycle WebSphere and check your Process Logs file which will have JVM Garbage collection information.

If there is Java Heap issue, then you can diagnose it using HeapAnalyzer. You can get IBM HeapAnalyzer from http://www.alphaworks.ibm/com/tech/heapanalyzer.

Cheers

Andy Kim
0
 
pavan_immadiAuthor Commented:
It seems to be the issue is with the java objects the Application owners have developed in the application . So is there any way make the server work for longer duration ? I have increased the java Heap size and we have to see how it goes .

Pavan.
0
 
anumalasCommented:
Increase heap size of java and monitor all services you are providing to application along with applicaiton server.

See the datasources and try to decrease pool size for less using services. instead of putting huge objects into application memory put those objects in database and use simple jdbc calls/ejbs to retrive data as per your requirement.  

Divide logs using log4j for each and every tier like for middle tier components create one log, for ui create another, for database related other etc.,  

Server crash can not be avoided with increased heap size... if you are having more frequent database calls pool resources, open crussors etc are also decrease the performance.

Read J2EE best parctices and divide your large application in to components .

This is not a exact answer but it will help :)
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

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