This doesn't look right, For such traffic and data threshold, usually a dispatcher is used. you might need to (as this might be a server balancer) follow a pattern similar to business delegate which reads the message off the queue and communicate with stateless session beans for further processing.
Now, depending on where the queue is deployed (presentation / web / client / server tiers) you can follow different patterns like business deligate, service to worker, etc
Consider the fact that if the number of queues grows to response to a higher data threshold, you might need to create instances of the dispatcher (MDBs) and balance the load among them.
You might need to perform a performance investigation to choose the best architecture.