概述
Thread-Per-Message的意思是为每一个消息的出来开辟一个线程使得消息能够以并发的方式进行处理,从而提高整个系统的吞吐量。这就好比电话接线员,收到的每一个电话都会交由一个工作人员处理。
定义Message类:
public class Message {
private int value;
public Message(int value) {
this.value=value;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
}
MessageHandler:
public class MessageHandler {
public void request(Message message) {
//Per-Message设计:每个消息请求开辟一个线程进行处理
new Thread() {
@Override
public void run() {
//此时执行业务逻辑
System.out.println(message+"-----"+Thread.currentThread().getName());
}
}.start();
}
}
测试类
public static void main(String[] args) throws InterruptedException {
MessageHandler messageHandler = new MessageHandler();
for(int i=0;i<5;i++) {
messageHandler.request(new Message(i));
}
}