Intelligent Resource Pooling
Original Publication Date: 2002-Oct-10
Included in the Prior Art Database: 2003-Jun-20
Summary of invention: In software development, it is commonly used technique to create S/W resources (i.e. MQ connection, DB connection etc.) and maintain in pool (i.e. resource pool) before applications actually use them. When application needs to use the resource, the resource is "checked out" from the pool. When application finishes using the resource, the resource is "checked in" to the pool. By this way, the resource is reused by applications. By using this technique, applications need not wait for creation of resource before using it. Therefore, this technique is particularly useful for resource whose creation takes long time. As mentioned above, MQ connection and DB connection are the typical examples. This invention enhances resource pool so that it can keep Quality of Service (QoS). QoS includes waiting time, ratio of waiting time and duration time of resource in use. The enhanced resource pool is called Intelligent Resoure Pool (IRP). To keep QoS, IRP monitors resource usage (frequency of resource check out/check, duration time of resource in use) and estimate required number of resources to keep QoS. If number of currently available resources are smaller than estimated number, IRP creates necessary number of resources automatically. If number of currently available resources are bigger than estimated number, IRP removes necessary number of resources automatically. Problem to be solved by this invention: In existing technique, there is no function to estimate number of required resource to keep Qos and increase/decrease number of resources automatically. In existing technique, resource is only created when check out request comes and there is no resources in pool. It is not possible to provide constant QoS by this technique and QoS may vary for each check out request. Another existing technique is to maintain maximum possible resources in pool. It is true that, by using this technique, best QoS can be achieved. However, unnecessary resources may have to be maintained in resource pool and it may cause system resource shortage (i.e. memory). This invention resolve these problems by estimating required number of resources and by adjusting number of resources automatically to keep QoS.