Apache Pulsar Node实战

Apache Pulsar Node实战

pulsar-client-cpp

直接下载client包 https://picgo-1251054923.cos.ap-guangzhou.myqcloud.com/uPic/apache-pulsar-client.debhttps://picgo-1251054923.cos.ap-guangzhou.myqcloud.com/uPic/apache-pulsar-client-dev.deb

apt install ./apache-pulsar-client*.deb

是一款kafka的替代品

const client = new Pulsar.Client({
 serviceUrl:
    '<http://pulsar-47aqq2352p5e.tdmq-pulsar.ap-sh.qcloud.tencenttdmq.com:5039>', //更换为接入地址(控制台集群管理页完整复制)
 authentication: new Pulsar.AuthenticationToken({
 token:
      'eyJrZXlJZCI6InB1bHNhci00N2FxcTIzNTJwNWUiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJwdWxzYXItNDdhcXEyMzUycDVlX3lha2lyIn0.z93WE7zacQRJ4g4WHipjia8UudQdityi3jykfItIWMg', //更换为密钥
 }),
});
// 消费者
const consumer = await client.subscribe({
 topic: 'pulsar-47aqq2352p5e/npm/list',
  subscription: 'my-subscription',
  subscriptionType: 'Exclusive',
  listener: (msg, msgConsumer) => {
 console.log('-------------------------------');
    console.log(msg.getData().toString());
    console.log('-------------------------------');
    msgConsumer.acknowledge(msg);
  },
});
// 生产者
const producer = await buildProducer('pulsar-47aqq2352p5e/npm/list');

const res = await producer.send({
 data: Buffer.from('Hello, Pulsar'),
});