//com.sproutsocial:nsq-j:0.9.4
public class NsqClient {
//消费
@Test
public void sub {
Subscriber subscriber = new Subscriber("172.0.0.0");
//subscriber.setMaxFlushDelayMillis(30000);
int defaultMaxInFlight = subscriber.getDefaultMaxInFlight();
int maxFlushDelayMillis = subscriber.getMaxFlushDelayMillis();
int lookupIntervalSecs = subscriber.getLookupIntervalSecs();
int maxAttempts = subscriber.getMaxAttempts();
Integer heartbeatInterval = subscriber.getConfig().getHeartbeatInterval();
System.out.println("defaultMaxInFlight:"+defaultMaxInFlight);
System.out.println("heartbeatInterval:"+heartbeatInterval);
System.out.println("maxFlushDelayMillis:"+maxFlushDelayMillis);
System.out.println("lookupIntervalSecs:"+lookupIntervalSecs);
System.out.println("maxAttempts:"+maxAttempts);
/**
* 第一个参数topic,由生产者确定
* 第二参数channel,由消费者确定
*/
subscriber.subscribe("ms", "aa", NsqClient::handleMessage);
}
public static void handleMessage(Message msg) {
try {
byte[] data = msg.getData();
System.out.println("Received:" + new String(msg.getData()));
msg.finish();
}
catch (Exception e) {
msg.requeue();
}
}
//生产
@Test
public void pub(){
Publisher publisher = new Publisher("172.0.0.0");
String str="abcd";
byte[] data = str.getBytes();//要发送的消息
publisher.publish("ms", data);//ms为topic
}
}
消息队列 java nsq
最新推荐文章于 2022-02-20 21:45:27 发布