USING AN UNSYNCHRONIZED EVENT POOL TO IMPROVE PERFORMANCE OF AN EVENT DRIVEN IM GATEWAY
First Claim
1. An instant messaging (IM) gateway comprising:
- a plurality of threads for handing IM events; and
a plurality of unsynchronized event object pools, wherein a one-to-one correspondence exists between the threads and the unsynchronized event object pools, wherein each unsynchronized event object pools comprises a set of event objects utilized by the IM gateway when handling received requests.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention discloses a solution for using an unsynchronized event pool in an IM gateway. In the solution, a set of object pools can be established, each including a set of event objects ordered relative to each other in a circular fashion. The IM gateway can detect an incoming message. A CPU processing thread for handling the incoming message can be determined. One of the unsynchronized event object pools associated with the thread can be ascertained. A current one of the ordered event objects within the pool can then be determined. The current one can be an object ordered after a last event object used from the pool. The thread can utilize the determined event object to handle a task for the incoming message, which negates a need and a time to create a new event object for the thread.
-
Citations
19 Claims
-
1. An instant messaging (IM) gateway comprising:
-
a plurality of threads for handing IM events; and a plurality of unsynchronized event object pools, wherein a one-to-one correspondence exists between the threads and the unsynchronized event object pools, wherein each unsynchronized event object pools comprises a set of event objects utilized by the IM gateway when handling received requests. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for an event driven IM gateway to obtain event objects comprising:
-
during an initialization process, an IM gateway creating a set of event objects, said event objects being associated with a plurality of unsynchronized event object pools; within each unsynchronized event object pool, ordering the event objects relative to each other in a circular fashion; the IM gateway detecting an incoming message from a remotely located client for at least one of an IM status notification and an IM; determining a CPU processing thread for handling the incoming message; ascertaining one of the unsynchronized event object pools associated with the thread; determining a current one of the ordered event objects, where the current one is an object ordered after a last event object used from the ascertained pool; and the thread utilizing the determined event object to handle a task for the incoming message. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for events in an event driven Instant Messaging (IM) gateway comprising:
-
detecting an IM event, which requires an IM gateway to utilize an even object; obtaining an event object for the IM event from an unsynchronized event pool; and utilizing the obtained event object when responding to the IM event. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification