Skip to main content

Problem:

Fine-tuning the timeout parameter in poll() system call

Resolution:

Product Name: VisiBroker for Java & C
Product Version: 8.x

Product Component: Core ORB
Platform: All

Summary

The poll system call provides users with a mechanism for multiplexing input/output over a set of file descriptors. It can be a powerful tool when you are multiplexing network sockets. Specifically, this method will indicate when a procedure will be safe to execute on an open file descriptor without any delays.

Under specific situations, you may wish to fine tune the timeout parameter in the poll() system call to achieve improve performance time of the applications.

Suggestions

The property "vbroker.se.iiop_tp.scm.iiop_tp.dispatcher.coolingTime" can be used to tune the value passed to the poll() API.

The description for this property is as follows:


"The ThreadPool dispatcher allows a “cooling time” to be set. A thread is said to be “hot” when the GIOP connection being served is potentially readable. It is upon either the creation of the connection or the arrival of a request. After the cooling time (in seconds), the thread can be returned to the thread pool."

The value is set in seconds and the default value of this value is 3 seconds.

A description of this property can be found in the "VisiBroker for C Developer"s Guide", under Chapter 9 - Managing threads and connections, page 130.

Note

The use of this property does not guarantee the improvement of performance of the applications. It depends on the design of the application and results may differ between different environments.

Example, setting the value to zero will return the connection back to the VisiBroker Server Connection Manager after servicing one request. The result is the potential drop in performance in servicing many requests in the same connection that come up in a very quick succession time.

Author: Cheng Cheng Nyee


#VisiBroker
#Security