Message handling multiplexer
First Claim
Patent Images
1. A method comprising:
- receiving messages from a plurality of servers by a processing device executing a multiplexer, wherein the multiplexer comprises a concurrent transport protocol stack;
coupling, by the processing device executing the multiplexer, a service name to each message with a corresponding destination service;
maintaining, by the processing device executing the multiplexer, a set of queues, one queue per service name;
adding, by the processing device executing the multiplexer, a message to a corresponding queue in view of the service name of the corresponding queue, to form a single shared channel;
maintaining, by the processing device executing the multiplexer, an out-of-band thread pool and a regular thread pool of the concurrent transport protocol stack, wherein the out-of-band thread pool and the regular thread pool are coupled to receive the messages from the set of queues;
dispatching the messages marked as out-of-band from a sender to a thread of the out-of-bound thread pool; and
dispatching all other messages from the sender to a thread of the regular thread pool.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for processing message is described. In one embodiment, an application programming interface is configured for receiving and sending messages. A multiplexer receives messages from different servers. A service name is coupled to each message with the corresponding destination service. A single shared channel is formed. The messages are processed over the single shared channel.
69 Citations
20 Claims
-
1. A method comprising:
-
receiving messages from a plurality of servers by a processing device executing a multiplexer, wherein the multiplexer comprises a concurrent transport protocol stack; coupling, by the processing device executing the multiplexer, a service name to each message with a corresponding destination service; maintaining, by the processing device executing the multiplexer, a set of queues, one queue per service name; adding, by the processing device executing the multiplexer, a message to a corresponding queue in view of the service name of the corresponding queue, to form a single shared channel; maintaining, by the processing device executing the multiplexer, an out-of-band thread pool and a regular thread pool of the concurrent transport protocol stack, wherein the out-of-band thread pool and the regular thread pool are coupled to receive the messages from the set of queues; dispatching the messages marked as out-of-band from a sender to a thread of the out-of-bound thread pool; and dispatching all other messages from the sender to a thread of the regular thread pool. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory machine-accessible storage medium comprising data that, when accessed by a processing device, cause the processing device to:
-
receive messages from a plurality of servers by the processing device executing a multiplexer, wherein the multiplexer comprises a concurrent transport protocol stack; couple, by the processing device executing the multiplexer, a service name to each message with a corresponding destination service; maintain, by the processing device executing the multiplexer, a set of queues, one queue per service name; add, by the processing device executing the multiplexer, a message to a corresponding queue in view of the service name of the corresponding queue, to form a single shared channel; maintain, by the processing device executing the multiplexer, an out-of-band thread pool and a regular thread pool of the concurrent transport protocol stack, wherein the out-of-band thread pool and the regular thread pool are coupled to receive the messages from the set of queues; dispatch the messages marked as out-of-band from a sender to a thread of the out-of-bound thread pool; and dispatch all other messages from the sender to a thread of the regular thread pool. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method comprising:
-
maintaining, by a processing device executing a multiplexer, a set of queues, one queue per service name; maintaining, by the processing device executing the multiplexer, a thread pool, wherein the thread pool is coupled to receive messages from the set of queues, wherein the thread pool comprises a regular thread pool and an out-of-bound thread pool; receiving messages from a plurality of servers by the processing device executing the multiplexer; associating, by the processing device executing the multiplexer, a service name to each message with a corresponding destination service; adding, by the processing device executing the multiplexer, a message to a corresponding queue in view of the service name of the corresponding queue; forming a single shared channel by the multiplexer; and processing the messages from the set of queues with the thread pool over the single shared channel, wherein processing the messages comprises; forming one thread from the regular thread pool for the messages from a sender, and forming one thread from the out-of-band thread pool for the messages marked as out of band from the sender, wherein the messages processed with the one thread from the out-of-band thread pool are processed before the messages processed with the one thread from the regular thread pool. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification