phx13ye
V2EX  ›  Java

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

  •  
  •   phx13ye ·
    Alwayswithme · Jun 29, 2016 · 3830 views
    This topic created in 3621 days ago, the information mentioned may be changed or developed.
    简单来说就是读写分离。

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

    哪一种是最佳实践啊??

    我想程序尽可能少改动,应该怎么做呢?
    第一种方法是不是要把 select 语句都加上 @Transactional ( readOnly=true )
    第二种要手动指定选择 slave datasource 的 mapper ,加入更多的 slave 后会不会很难维护??
    4 replies    2016-06-29 19:22:28 +08:00
    twtiyb
        1
    twtiyb  
       Jun 29, 2016
    简单项目 mycat 。
    wander2008
        2
    wander2008  
       Jun 29, 2016 via iPhone
    读写分离?这还不简单?统一的 dal
    jwangkun
        3
    jwangkun  
       Jun 29, 2016 via Android
    试试 Sharding-JDBC
    Infernalzero
        4
    Infernalzero  
       Jun 29, 2016   ❤️ 3
    程序改动尽可能少的话还是配多个数据源
    spring 有个 AbstractRoutingDataSource 类,继承这个类实现自己的数据库选择方式就行了
    指定 datasource 的时候有多种选择,比如自己写个注解标示 datasource
    写 mapper 的时候注解指定是哪个 datasource 就行了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1100 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 17:59 · PVG 01:59 · LAX 10:59 · JFK 13:59
    ♥ Do have faith in what you're doing.