What are object pooling and connection pooling and difference?
Answer Posted / prasenjit
Opening a database connection is a resource intensive and
time consuming operation. Connection pooling increases the
performance of Web applications by reusing active database
connections instead of creating a new connection with every
request. Connection pool manager maintains a pool of open
database connections. When a new connection requests come
in, the pool manager checks if the pool contains any unused
connections and returns one if available. If all connections
currently in the pool are busy and the maximum pool size has
not been reached, the new connection is created and added to
the pool. When the pool reaches its maximum size all new
connection requests are being queued up until a connection
in the pool becomes available or the connection attempt
times out.
Object Pool
An Object Pool may be defined as a container of objects that
are ready for use. Lists of ready-to-be-used objects are
contained in this pool. Whenever a new request for an object
creation comes in, the request is served by allocating an
object from the pool. Therefore, it reduces the overhead of
creating and re-creating objects each time an object
creation is required. "An object pool is an object that
holds a list of other objects, ready to make them available
for use (to yet another object, probably). It does the
management work involved, like keeping track of which
objects are currently in use, how many objects the pool
holds, whether this number should be increased."
The biggest advantage of using Object Pooling is that it
minimizes the consumption of memory and the system's
resources by recycling and re-using objects as and when it
is needed and serving the request for new objects from the
pool of ready-to-be-used objects. The objects that the
application
is done with (the objects are no longer needed) are sent
back to the pool rather than destroying them from the memory.
Is This Answer Correct ? | 10 Yes | 1 No |
Post New Answer View All Answers
Please explain what do the terms “boxing” and “unboxing” mean?
Is .net core free?
Why did they call it .net?
Explain the difference between the while and for loop. Provide a .net syntax for both loops?
What is different between webusercontrol and in webcustomcontrol?
What is a windows process in .net?
Can I write my own .net host?
Explain garbage collection?
explain the states of a window service application?
Do you know what is the difference between an abstract class and an interface?
What is a .DLL and .EXE files called in .NET?
What are the deferred execution and the immediate execution in linq?
What is Flyout Design Pattern in .NET?
How to implement getcommon method in class a? Are you seeing any problem in the implementation?
What is a formatter in .net?