美文网首页
分布式数据库系统的事务控制

分布式数据库系统的事务控制

作者: 鸿雁长飞鱼龙潜跃 | 来源:发表于2019-05-13 16:46 被阅读0次

分布式数据库系统的事务控制。

以mysql为例,主要有两种方案。

一种是应用程序来保证。

一种是mysql中间件来进行事务控制。

一,MySQL集群基于中间件实现的事务控制

中间件其实很多,我们这里看一个常用的。

Mycat

遵守Mysql原生协议,跨语言,跨数据库的通用中间件代理。

基于心跳的自动故障切换,支持读写分离,支持 MySQL 一双主多从,以及一主多从

有效管理数据源连接,基于数据分库,而不是分表的模式。

基于 NIO 实现,有效管理线程,高并发问题。

支持数据的多片自动路由与聚合,支持 sum , count , max 等常用的聚合函数。

支持2表 join,甚至基于 caltlet 的多表 join。

支持通过全局表,ER 关系的分片策略,实现了高效的多表 join 查询。

支持多租户方案。

支持分布式事务(弱xa)

支持全局序列号,解决分布式下的主键生成问题。

分片规则丰富,插件化开发,易于扩展。

强大的 web,命令行监控。

支持前端作为 MySQL 通用代理,后端 JDBC 方式支持 Oracle、DB2、SQL Server 、 mongodb 、巨杉。

集群基于 ZooKeeper 管理,在线升级,扩容,智能优化,大数据处理(2.0开发版)。

二,什么是MySQL集群

  MySQL集群是一个无共享的(shared-nothing)、分布式节点架构的存储方案,其目的是提供容错性和高性能。

  数据更新使用读已提交隔离级别(read-committedisolation)来保证所有节点数据的一致性,使用两阶段提交机制(two-phasedcommit)保证所有节点都有相同的数据(如果任何一个写操作失败,则更新失败)。

  无共享的对等节点使得某台服务器上的更新操作在其他服务器上立即可见。传播更新使用一种复杂的通信机制,这一机制专用来提供跨网络的高吞吐量。

  通过多个MySQL服务器分配负载,从而最大程度的达到高性能,通过在不同位置存储数据保证高可用性和冗余。

相关文章

  • 分布式数据库系统的事务控制

    分布式数据库系统的事务控制。 以mysql为例,主要有两种方案。 一种是应用程序来保证。 一种是mysql中间件来...

  • 分布式事务(3)--seate

    Seate控制分布式事务:Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。...

  • 分布式事务原理及SpringBoot整合RabbitMQ实现可靠

    分布式事务 我们知道在单数据库系统中,实现数据的一致性,通过数据库的事务来处理比较简单。在微服务或分布式系统中,各...

  • 分布式事务解决方案

    1 如何进行分布式事务控制? CAP理论是分布式事务处理的理论基础,了解了CAP理论有助于我们研究分布式事务的处理...

  • springboot spring cloud 分布式事务 LC

    简介 LCN分布式事务框架的核心功能是对本地事务的协调控制,框架本身并不创建事务,只是对本地事务做协调控制。因此该...

  • 关系数据库维护3.0

    并发控制 多用户数据库系统允许多用户同时使用。 事务串行执行,即每个时刻只有一个事务运行,其他事务必须等到这个事务...

  • 数据库之并发控制

    协调多用户数据库系统中事务的同时执行被称为并发控制。并发控制的目的是确保多用户数据库环境中事务的可序列化性。为了实...

  • 65.Seata案例-完成下单和扣除库存代码

    Sesta实现分布式事务控制 本示例通过Seata中间件实现分布式事务,模拟电商中的下单和扣库存的过程 我们通过订...

  • 分布式事务与分布式锁

    一、分布式事务 什么事分布式事务 分布式事务就是指事务的资源分别位于不同的分布式系统的不同节点之上的事务。 分布式...

  • RockMq事务消息原理

    场景: 通过mq 进行分布式事务的一致性控制,参考转账事务原理 目的: 保持本地事务和mq发送的原子性 过程: ...

网友评论

      本文标题:分布式数据库系统的事务控制

      本文链接:https://www.haomeiwen.com/subject/mfjraqtx.html