V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
phx13ye
V2EX  ›  Java

各位的 spring-mybatis 项目怎么处理 MySQL Replication 架构?

  •  
  •   phx13ye ·
    Alwayswithme · 2016-06-29 14:52:11 +08:00 · 3167 次点击
    这是一个创建于 3072 天前的主题,其中的信息可能已经有所发展或是发生改变。
    简单来说就是读写分离。

    配置目前看了一下有两种方案,
    1 , jdbc 驱动用 com.mysql.jdbc.ReplicationDriver
    2 ,配置多个数据源

    哪一种是最佳实践啊??

    我想程序尽可能少改动,应该怎么做呢?
    第一种方法是不是要把 select 语句都加上 @Transactional ( readOnly=true )
    第二种要手动指定选择 slave datasource 的 mapper ,加入更多的 slave 后会不会很难维护??
    4 条回复    2016-06-29 19:22:28 +08:00
    twtiyb
        1
    twtiyb  
       2016-06-29 16:48:57 +08:00
    简单项目 mycat 。
    wander2008
        2
    wander2008  
       2016-06-29 17:25:24 +08:00 via iPhone
    读写分离?这还不简单?统一的 dal
    jwangkun
        3
    jwangkun  
       2016-06-29 18:23:48 +08:00 via Android
    试试 Sharding-JDBC
    Infernalzero
        4
    Infernalzero  
       2016-06-29 19:22:28 +08:00   ❤️ 3
    程序改动尽可能少的话还是配多个数据源
    spring 有个 AbstractRoutingDataSource 类,继承这个类实现自己的数据库选择方式就行了
    指定 datasource 的时候有多种选择,比如自己写个注解标示 datasource
    写 mapper 的时候注解指定是哪个 datasource 就行了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3626 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 04:29 · PVG 12:29 · LAX 20:29 · JFK 23:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.