canbus速率_erie canal

canbus速率_erie canalDatabus和canal都能够提供实时从数据库获取变更,并提供给下游的实时消费流的功能。本文针对两个系统实现和应用上的不同点,做了一个简单的对比:对比项Databuscanal结论支持的

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Databus和canal都能够提供实时从数据库获取变更,并提供给下游的实时消费流的功能。

本文针对两个系统实现和应用上的不同点,做了一个简单的对比:

对比项

 

Databus

canal

结论

支持的数据库

 

mysql, oracle

mysql(据说内部版本支持oracle)

Databus目前支持的数据源更多

业务开发

 

业务只需要实现事件处理接口

事件处理外,需要处理ack/rollback,

反序列化异常等

Databus开发接口用户友好度更高

服务模型

 relay

relay可以同时服务多个client

一个server instance只能服务一个client

(受限于server端保存拉取位点)

Databus服务模式更灵活

 

client

client可以拉取多个relay的变更,

访问的relay可以指定拉取某些表某些分片的变更

client只能从一个server拉取变更,

而且只能是拉取全量的变更

可扩展性

 

client可以线性扩展,处理能力也能线性扩展

(Databus可识别pk,自动做数据分片)

client无法扩展

Databus扩展性更好

可用性

client ha

client支持cluster模式,每个client处理一部分数据,

某个client挂掉,其他client自动接管对应分片数据

主备client模式,主client消费,

如果主client挂掉,备client可自动接管

Databus实时热备方案更成熟

 

relay/server ha

多个relay可连接到同一个数据库,

client可以配置多个relay,relay故障启动切换

主备relay模式,relay通过zk进行failover

canal主备模式对数据库影响更小

 

故障对上游

数据库的影响

client故障,bootstrap会继续拉取变更,

client恢复后直接从bootstrap拉取历史变更

client故障会阻塞server拉取变更,

client恢复会导致server瞬时从数据库拉取大量变更

Databus本身的故障对数据库影响几乎为0

系统状态监控

 

程序通过http接口将运行状态暴露给外部

暂无

Databus程序可监控性更好

开发语言

 

java,核心代码16w,测试代码6w

java,4.2w核心代码,6k测试代码

Databus项目更成熟,当然学习成本也更大

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167187.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 通俗理解逻辑删除和物理删除的区别「建议收藏」

    通俗理解逻辑删除和物理删除的区别「建议收藏」一:逻辑删除逻辑删除的本质是修改操作,所谓的逻辑删除其实并不是真正的删除,而是在表中将对应的是否删除标识(is_delete)或者说是状态字段(status)做修改操作。比如0是未删除,1是删除。在逻辑上数据是被删除的,但数据本身依然存在库中。对应的SQL语句:update表名setis_delete=1whereid=1;语句表示,在该表中将id为1的信息进行逻…

    2022年6月2日
    130
  • maven安装命令_windows安装maven

    maven安装命令_windows安装mavenLinux安装Maven教程

    2022年8月30日
    5
  • LoadRunner11.00安装&使用教程[通俗易懂]

    LoadRunner11.00安装&使用教程[通俗易懂]本教程分为四部分内容:安装序言:由于LoadRunner12.02或者12.53版本是HP公司推出的自带免费50个虚拟用户进行压力测试的版本,目的为了工程师去学习与了解的该工具。为了增大压力(增加虚拟用户数)到达高并发的性能测试,采用LoadRunner11.00,增加对应的Lice…

    2022年9月13日
    3
  • trylock 用法_Java lock

    trylock 用法_Java lock在并发编程中,为了避免多线程同时读写共享资源,我们需要互斥。Go标准库提供了互斥锁sync.Mutex,通过加锁Lock()方法和解锁Unlock()方法达到对共享资源的并发控制。在之前的设计中,当锁被占有,其他goroutine尝试获取锁时会被阻塞。这种方式当然是合理的,但是在某些情况下,或许我们希望在获取锁失败时,并不想停止执行,而是可以进入其他的逻…

    2022年10月10日
    4
  • 排序算法:桶排序、计数排序、基数排序

    排序算法:桶排序、计数排序、基数排序

    2021年10月5日
    38
  • Android多线程:HandlerThread详细使用手册(含实例讲解)

    Android多线程:HandlerThread详细使用手册(含实例讲解)前言多线程的应用在Android开发中是非常常见的,常用方法主要有:继承Thread类实现Runnable接口HandlerAsyncTaskHandlerThread今天,我将全面解析多线程其中一种常见用法:HandlerThread由于本文涉及多线程知识和Handler源码解析,所以阅读本文前建议先看:Android开发:Handler异步通信机制全面解…

    2022年7月27日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号