NonStop Server Guide for BEA WebLogic Server 8.1

Introduction
HP NonStop Server Guide for BEA WebLogic Server 8.1529891-001
1-4
Native Socket Multiplexer
sockets. Sockets SP1 and SP6, though ready with data, are not serviced immediately,
whereas the socket readers are polling sockets SP2 and SP4 without data.
Another potential aspect of the Java socket multiplexer implementation, which has an
impact on the overall performance of the WebLogic Server application, is the use of the
kernel execute queue. The kernel execute queue is configured with threads that are
used to perform server internal functions and also application request processing.
When the pure Java socket multiplexer is used, the number of socket readers is
expressed as a percentage of the kernel default execute queue, thus reducing the
number of threads that can service other requests.
To overcome this, a native socket multiplexer facility is implemented in the WebLogic
Server product. This native socket multiplexer eliminates the need to poll the sockets
by providing a set of dedicated poller threads. These threads call native code (hence
the name native socket multiplexer) implemented in C and C++ to use the host
operating system-specific facility to wait for I/O events on the sockets.
As shown in Figure 1-2, a single thread, N1, waits for I/O events on all the active
sockets S1 through S6. Whenever an I/O event is triggered in any of the sockets, the
thread is notified of the event by the operating system. The thread wakes up to service
the I/O event on the socket. This greatly reduces the unnecessary overhead in polling
Figure 1-1. Socket Reader Polling
SP1 SP6
SP2
SP3
SP4
SP5
SR1 SR2 SR3
VST003.vsd