Server User Manual
Table Of Contents
- Sun GlassFish Enterprise Server 2.1 Performance Tuning Guide
- Preface
- Overview of Enterprise Server Performance Tuning
- Tuning Your Application
- Java Programming Guidelines
- Java Server Page and Servlet Tuning
- EJB Performance Tuning
- Goals
- Monitoring EJB Components
- General Guidelines
- Using Local and Remote Interfaces
- Improving Performance of EJB Transactions
- Use Container-Managed Transactions
- Don’t Encompass User Input Time
- Identify Non-Transactional Methods
- Use TX_REQUIRED for Long Transaction Chains
- Use Lowest Cost Database Locking
- Use XA-Capable Data Sources Only When Needed
- Configure JDBC Resources as One-Phase Commit Resources
- Use the Least Expensive Transaction Attribute
- Using Special Techniques
- Tuning Tips for Specific Types of EJB Components
- JDBC and Database Access
- Tuning Message-Driven Beans
- Tuning the Enterprise Server
- Deployment Settings
- Logger Settings
- Web Container Settings
- EJB Container Settings
- Java Message Service Settings
- Transaction Service Settings
- HTTP Service Settings
- ORB Settings
- Thread Pool Settings
- Resources
- Tuning the Java Runtime System
- Tuning the Operating System and Platform
- Tuning for High-Availability
- Index

++++++++++++++++++++++++++++++
Message(Thread[ORB Client-side Reader, conn to 192.18.80.118:1050,5,main]):
createFromStream: type is 4 <
MessageBase(Thread[ORB Client-side Reader, conn to 192.18.80.118:1050,5,main]):
Message GIOP version: 1.2
MessageBase(Thread[ORB Client-side Reader, conn to 192.18.80.118:1050,5,main]):
ORB Max GIOP Version: 1.2
Message(Thread[ORB Client-side Reader, conn to 192.18.80.118:1050,5,main]):
createFromStream: message construction complete.
com.sun.corba.ee.internal.iiop.MessageMediator
(Thread[ORB Client-side Reader, conn to 192.18.80.118:1050,5,main]): Received message:
----- Input Buffer -----
Current index: 0
Total length : 340
47494f50010200040000014800000005GIOP.......H....
Note – The ag -Dcom.sun.CORBA.ORBdebug=giop generates many debug messages in the logs.
This is used only when you suspect message fragmentation.
In this sample output above, the createFromStream type is shown as 4. This implies that the
message is a fragment of a bigger message. To avoid fragmented messages, increase the
fragment size. Larger fragments mean that messages are sent as one unit and not as fragments,
saving the overhead of multiple messages and corresponding processing at the receiving end to
piece the messages together.
If most messages being sent in the application are fragmented, increasing the fragment size is
likely to improve eciency. On the other hand, if only a few messages are fragmented, it might
be more ecient to have a lower fragment size that requires smaller buers for writing
messages.
Improving ORB Performance with Java Serialization
It is possible to improve ORB performance by using Java Serialization instead of standard
Common Data Representation (CDR) for data for transport over the network. This capability is
called Java Serialization over GIOP (General Inter-ORB Protocol), or JSG.
In some cases, JSG can provide better performance throughput than CDR. The performance
dierences depend highly on the application. Applications with remote objects having small
amounts data transmitted between client and server will most often perform better using JSG.
ORB Settings
Chapter 3 • Tuning the Enterprise Server 75










