Technical support knowledge for Application Integration Middleware including WebSphere, CICS, BPM, MQ, Broker, IIB, ODM, DataPower, Mobile, Appliances, and more! Following the IBM Social Computing Guidelines - Steve Webb, Joseph Lam
Java heap is the area of memory that is used by the Java virtual machine (JVM) for storing Java objects. Optimal Java heap size is application and use dependent. Setting the JVM heap size is directly related to the number of server instances that needs to be started on a specific node and the total RAM available on the machine. The maximum heap should be incremented not to exceed 50% of overall physical memory. The Java heap memory is used by the applications that are deployed and the component running in... [More]
Co-authored by: Shawfu Chen and Steve Dittmar
As of IBM WebSphere Application Server V8.5, users on most platforms can choose to run on Java SDK 6.1 or 7.0, with support for 7.1 having been added more recently. Java SDK 6.1 continues to be shipped with, and updated automatically by, the WebSphere Application Server fix packs. However, some users do not realize that Java SDK 7.x fix packs are not included in the WebSphere Application Server fix packs and thus is not automatically installed or kept up-to-date by the... [More]
If there is still free memory in the system when a native out-of-memory error occurs, then the problem is likely to be a shortage of memory in the low-memory region (under 4GB). Although the Java heap can be located above this boundary, other data, which are associated with Java objects, are located in the lower memory segments. Specifically these are the memory segments associated with threads, classes and monitors.
See the following related content:
A wealth of valuable JVM diagnostic data can be gathered by doing the following tasks:
Generate a Java™ thread dump.
Enable logging of verbose garbage collection data for Server.
Generate a Java heap dump.
Generate a system core dump & snap trc file.
In the overall process of problem determination, diagnostic data must be collected or generated, and the data must be analyzed. Various tools are available to help you analyze diagnostic data for solving problems. Below... [More]
In one of Vish's blogs, he explains how to install the optional Java 7.x on WebSphere Application Sever 8.5:
Installing optional Java 7.x on WebSphere Application Server 8.5
Once it is installed, however how can you tell which version of Java is actually being used? You can look at the SystemOut.log header, but the output may be a little... [More]
Starting with IBM WebSphere Application Server (WAS) v184.108.40.206, you can install Java 7.0 as an optional feature. WAS v220.127.116.11 comes with Java 6 as the default Java SDK. Java 7.0 can be added at any point in time to the installation, thereby adding the Java 7.0 SDK selection to the possible choices of Java SDKs that can be used. For completeness:
Java 7.0 was shipped as an optional feature that can be installed with WAS v18.104.22.168
Java 7.1 is shipped with WAS v22.214.171.124 (in a full... [More]
The requirement is to create a clustered WebSphere MQ (WMQ) infrastructure, and then send messages to an application, known as a Message Driven Bean, deployed onto WebSphere Application Server (WAS).
The next step will be to create a more sophisticated application that can send and receive messages to/from WebSphere MQ, most likely leveraging the JavaEE Service Component Architecture.
In this scenario, I will create a pair of WMQ Queue Managers, each on a separate OS ( Red Hat VM ), one representing... [More]
The WebSphere L2 Support team handles its fair share of WebSphere Application Server performance analysis. Often it appears as though the Monitoring Agent (that thing that reports whether the system is behaving - or not) is the problem itself. The truth is, the more problems that the agent has to report, the more noise the agent is going to interject into the diagnostic data. It's a vicious cycle.
One of the common agents that are encountered is Wily. Like any performance monitoring tool, Wily can introduce a... [More]
Occasionally when reviewing a heapdump that was generated from an out of memory event, the largest consumer of heap memory may consume slightly more memory than the other objects. Because of this, WebSphere users and moderators may incorrectly accuse the largest heap consumer as a memory leak.
If a Java™ heap is sized too small, an out of memory error will occur regardless if a memory leak exists. The leak suspect shown in IBM HeapAnalyzer or Memory Analyzer (MAT) will show a java object... [More]
We've probably all see a hung JVM at one time or another and chances are you've figured this out in one of two was if you're dealing with WebSphere Application Server: 1. the users are complaining that the browser just “spins” and never returns a web page, or 2. you've noticed output in the WebSphere logs (SystemOut.log) that indicate potentially hung threads. For the purposes of this discussion, we'll focus on the latter method.
WebSphere Application Server provides a feature that... [More]
Where do I start with sizing the heap for my WebSphere Application Server? This question is very common when trying to determine where to begin sizing your heap for your application when using WebSphere Application Server. The default heap sizes are for use during installation and are often way too small for use in production environments. The first place to begin is to know if the server has 32-bit or 64-bit architecture and whether your installation of WebSphere Application Server is a 32-bit or 64-bit environment. Next determine... [More]
If you're having some trouble with your Java™ application, be it JSE or JEE, you've probably been looking at javacores (also called thread dumps or java dumps). If not, you should be and that is a topic for another day.
When looking at the javacores with all those threads in there, have you ever wanted to know things like: Which user is causing these threads to spawn? What were they doing in the application? When did that thread get created?
Well want no longer! With a few lines... [More]
Many times, while working with Java™-related programs, we run into situations where the Java Virtual Machine (JVM) will not start because of some memory related issues. In this article, we will cover one of these types of these memory-related problems. We will accomplish this through the use of a technique and a freely downloadable tool.
To get the most out of this article, the reader should posses the following skills and knowledge:
Basic understanding of the Java... [More]
It has been a while since I wrote about what is hot in the WebSphere MQ (WMQ) support world and there have been quite a few new and helpful documents or articles that have been written or updated since the last time I wrote about what was hot. In case you did not read the previous blogs that I wrote on this topic here are links to the first 2 blog articles because the items in those articles are still relevant today. Many of those items are timeless. They cover topics that someone, somewhere in the world is going to be dealing with... [More]
In my job as a Project Leader in ITSO (also known as the IBM Redbooks team) I have published more than 100 books since 1999. My first two Redbooks publications even had the red covers. Anyone still remember them? I have always enjoyed working for ITSO, because of the opportunity to meet with people from all over the world and to be able to work on the leading-edge IBM products. Most of the Redbooks projects are run in one of the two ITSO centers in US --Raleigh and Poughkeepsie. However, recently we have started running some of these outside... [More]