tcp 模式已经跑通了。改成RocketMQ后
loader无法加载 RocketMQProducer , 如下图 报错. Extension instance(name: rocketmq, class: interface com.alibaba.otter.canal.connector.core.spi.CanalMQProducer) could not be instantiated: class could not be found
想咨询一下,还需要如何配置IDEA 才能正常启动?
9条答案
按热度按时间w8f9ii691#
我把这里注释掉就ok了
iyr7buue2#
mq模式下性能是不是比tcp要好
ergxz8rk3#
mq模式下性能是不是比tcp要好
只能说扩展性比较好吧,因为tcp是当前线程直接去获取binlog
导入到mq中的话
eqoofvh94#
mq模式下性能是不是比tcp要好
只能说扩展性比较好吧,因为tcp是当前线程直接去获取binlog
导入到mq中的话
我测试发现使用tcp模式性能好差 导个10w条数据要好久 如果使用mq的模式 那从mq到es这块是不是需要自己来实现了
ogsagwnx5#
好久是多久? 源码这里的实现也是先从canal中获取数据,再发送给RocketMQ.
可以调整下 getWithoutAck 的参数 batchSize, 1000试试。 使用RocketMQ主要是为了削峰,因为线上环境也不可能24小时不停的变更,业务总有低谷。如果高峰期来不及消费,扔到MQ中也可以在低估期慢慢消费。
mlnl4t2r6#
好久是多久? 源码这里的实现也是先从canal中获取数据,再发送给RocketMQ. 可以调整下 getWithoutAck 的参数 batchSize, 1000试试。 使用RocketMQ主要是为了削峰,因为线上环境也不可能24小时不停的变更,业务总有低谷。如果高峰期来不及消费,扔到MQ中也可以在低估期慢慢消费。
老哥 方便加下v吗 jccccccc 好像下划线没显示出来...
db2dz4w87#
请问一下 你们跑源码jdk的版本是哪个 我用了1.8-291 331 333都是Could not initialize class com.sun.org.apache.xml.internal.serializer.Encodings
voase2hg8#
Encodings
我用jdk11
x4shl7ld9#
我把这里注释掉就ok了
这里不注释也行,就是需要编译后将deployer模块的canal复制到最外层的target目录下