我想使用一些机制来做这样的事情 - 我有一个应用程序服务器获取处理订单的请求。一个请求可以有一个订单或两个订单。为了处理订单,应用程序需要打电话给外部供应商,供应商可以一次处理最多5个订单。我想创建一个组件,最多可以批量处理5个订单(如果可用),并向供应商发出一个请求,然后当我收到响应时,将响应重新分配给适当的请求。在第一个请求到达之前,组件会等待2秒钟,然后才发出批量请求。使用java排队和批量请求
我想过使用JMS,但在JMS中,消费者一旦到达并且消费者一次处理一条消息,就会处理消息(订单)。我正在考虑使用常规队列(ArrayBlockingQueue)并在使用ScheduledTimerTask进行触发前对订单进行批处理。有没有人有任何想法 - 预先感谢。
您是否尝试实施此解决方案?你有没有遇到任何具体问题? – Olaf 2011-05-18 15:01:04