Add mq adapter

Signed-off-by: duhengforever <duhengforever@gmail.com>
This commit is contained in:
duhengforever
2018-09-21 18:41:37 +08:00
parent d5aa324ce4
commit 821f3eced5
5 changed files with 40 additions and 28 deletions

View File

@@ -35,14 +35,13 @@ public class CanalRocketMQProducer implements CanalMQProducer {
}
@Override
public void send(MQProperties.Topic topic, com.alibaba.otter.canal.protocol.Message data) {
public void send(final MQProperties.Topic topic, com.alibaba.otter.canal.protocol.Message data) {
try {
Message message = new Message(topic.getTopic(), CanalMessageSerializer.serializer(data));
this.defaultMQProducer.send(message, new MessageQueueSelector() {
@Override
public MessageQueue select(List<MessageQueue> mqs, Message msg, Object arg) {
// int index = (arg.hashCode() % mqs.size());
return mqs.get(1);
return mqs.get(topic.getPartition());
}
}, null);
} catch (MQClientException | RemotingException | MQBrokerException | InterruptedException e) {