A concurrent connection is the number of connections available to your database
in any given second.
What are database connections?
There are two types of database connections: OLTP and Persistent.
An OLTP database connection is the standard connection type for
web transactions, and lasts only as long as a transaction takes to complete,
and then disconnects. So, you can have a limit of 10 transactions in a
single second, but a transaction takes a fraction of a second to complete.
A Persistent database connection uses a single connection to conduct
multiple transactions. With either type of connection, you'll find it
requires a lot of traffic to exceed the maximum number of connections
in any given second.
Concurrent Connection Limitations
By setting limits on concurrent connections, we ensure your transactions
get through, and server other users don't hinder your use of the system.
Oracle in a shared environment is much different than running
Oracle on a dedicated server. In a shared environment, concurrent
connections to the database become a key limitation: A separate Oracle
process is required to handle each connection in an Oracle database, and
each process may require up to 2 MB of memory. All database installations--even
Dedicated installations of Oracle and others--limit the number of concurrent
connections based on the upper limit of memory and CPU available.
Example: Consider a shared Oracle server with 30 customer accounts
at 100 concurrent connections per account. If each customer averaged only
30% of their maximum--or 33 connections per customer--the total number
of concurrent connections would average 990. At 2 MB per process, the
machine would be using 1980 MB RAM. This does not include shared memory
for database buffering, or any memory for core OS/DB processes. In addition,
at 990 concurrent connections, a great deal of processor time is burned
just handling context switches. Under these circumstances, the server
would slow to a crawl very quickly.
Limiting concurrent connections enables us to dedicate more memory to
each individual process to dramatically increase the performance of your
queries. Because of these precautions, complex transactions run much faster
than with other databases. More dedicated memory is available to each
process, and a high amount of system memory is dedicated to buffering.
Oracle offers a lot of benefits over other databases. But it's not for
everyone; others prefer the simplicity of mySQL.
Consider the following benefits of Oracle:
- High data integrity
- Better Web performance
- True scalability, including the ability to move from Shared, to Dedicated,
to Clustered servers as your needs grow
- Mission-critical recovery services such as Point-In-Time Recovery
of any data object