|
Project Information
Featured
Links
|
Arcana provides two OpenSource pooling products to help improve your application's scalability: - DataModulePool - This component grew from a need to pool all sorts of database connections and is an offshoot from our original work on the Interbase Pooling Components. The biggest difference is that TDataModulePool pools entire Data Modules. This allows for prepared queries, database connections, or almost any other Delphi component to be pooled. If you are developing a production server and have a need for pooling we recommend using this component over the previously mentioned Interbase Pooling Components.
- ObjectPool - This is a generic object pooling class. It grew from the need to improve server memory usage by pooling repetitive memory. For example, say you have an in memory list of sorted data. This data must be accessible from multiple threads, and you don't want to lock all threads every time you need to search this data. You could create this list for each thread, but that data could potentially become very huge as hundreds or thousands of threads are created. This is the reason for TObjectPool. In this scenario we could create a set number of sorted TStringLists and add them to a pool. As we need to search, we can acquire a string list, work on it, and release it back ready for another thread. This object was written to support an article written for the June 2003 issue of 'The Delphi Magazine'.
NOTE: Although you may use any of these products in your IntraWeb applications, the datamodule pooling components are already installed by default (though renamed TIWDataModulePool). For your information, the pooling component included is simply a copy of either the TArcDataModulePool or TArcDMServerPool component, depending on the release of IW. Installing our components along side of the IntraWeb components should be no problem whatsoever.
|