Oracle8 Scalability Options

Oracle has introduced connection pooling and multiplexing with Net8, the network component of Oracle8. Both of these features build on the functionality that exists with the multi-threaded server that first shipped with Oracle7. With the added benefits of connection pooling and multiplexing, Oracle has racked up some very impressive benchmark results with tens of thousands of users. Your mileage may vary.

Connection Pooling

Connection pooling maximizes the utilization of a dispatcher’s existing network connections by detecting clients that are connected but idle for a predetermined time and reallocating their transport connection to an incoming client connection. The default timeout value is determined by Net8 and may vary by platform. If the idle client resumes activity, the connection is reestablished.

You enable connection pooling by specifying the POOL attribute of the MTS_DISPATCHERS INIT.ORA parameter—for example:

mts_dispatchers="(PROTOCOL=TCP)(POOL=ON)"

This enables connection pooling for the dispatcher, using the default values.

Connection pooling applies to both incoming and outgoing connections, and you can specify the timeout (in network ticks) for both types of connections:

mts_dispatchers="(PROTOCOL=TCP)(POOL=(IN=20)(OUT=100))"

You can also enable connection pooling for inbound (or outbound) connections only:

mts_dispatchers="(PROTOCOL=TCP)(POOL=(IN=20))"

Obviously, connection pooling works better with some types of applications than others. In ...

Get Oracle Distributed Systems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.