• 技术文章 >数据库 >MySQL

    mysql读写分离的两种实现

    小妮浅浅小妮浅浅2021-07-22 16:17:22原创121

    1、基于程序代码内部实现。根据select和insert对代码中的路由进行分类,这也是目前生产环境中应用最广泛的方法。

    优点是性能好,因为在程序代码中实现,不需要增加额外的设备作为硬件支出;

    缺点是需要开发人员来实现。

    并非所有的应用都适合在程序代码中实现读写分离,想要一些大型复杂的Java应用,如果在程序代码中实现读写分离,代码就会发生很大的变化。

    2、基于中间代理实现。代理一般位于客户端和服务器之间。代理服务器收到客户端请求后,通过判断转发到后端数据库。

    代表程序:

    (1)MySQL-Proxy:MySQL开源项目,SQL由自己的lua脚本判断。

    (2)Atlas:是基于MySQL协议的数据中间层项目,由奇虎360Web平台部基础设施团队开发维护;

    它是在mysql-proxy0.8.2版本的基础上优化的,增加了一些新的功能特性。

    mysql业务在360内部使用Atlas,每天承载数十亿条读写请求,支持事务和存储过程。

    (3)Amoeba:由陈思儒开发,该程序由Java语言开发,阿里巴巴产环境,但不支持事务和存储过程。

    Amoeba是一款非常容易使用和移植的软件,因此在生产环境中广泛应用于数据库代理。

    以上就是mysql读写分离的两种实现,希望对大家有所帮助。更多mysql学习指路:MySQL

    专题推荐:mysql读写分离
    品易云
    上一篇:mysql中limit的使用方法 下一篇:mysql二进制日志的保存方式

    相关文章推荐

    • mysql中set类型如何理解• 如何使用PHP删除MySQL数据库• mysql instr条件查询的实现• mysql模块如何使用• mysql服务器端的组件• mysql逻辑备份有什么特点• mysql常见的优化类型• PHP7原生MySQL数据库的操作• mysql在win10配置环境变量的方法• mysql内连接是什么• mysql内连接查询的两种类型• mysql外连接查询如何理解• mysql外连接有哪些类型• mysql中limit的使用方法

    全部评论我要评论

  • 取消发布评论
  • 

    Python学习网