一个日经问题总结- Java 向 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wysnylc

一个日经问题总结- Java 向

  •  
  •   wysnylc 2018 年 11 月 1 日 1712 次点击
    这是一个创建于 2732 天前的主题,其中的信息可能已经有所发展或是发生改变。

    先贴地址:Java 日经问题总结
    欢迎补充,蟹蟹

    第 1 条附言    2018 年 11 月 2 日

    2018 年 11 月 2 日 14:24:07 已收录 8 个日经问题
    14 条回复    2018-11-01 16:53:09 +08:00
    wysnylc
        1
    wysnylc  
    OP
       2018 年 11 月 1 日
    目前收录:
    Mybatis 二级缓存->业务缓存的解决方案
    为什么不推荐使用 join
    glacer
        2
    glacer  
       2018 年 11 月 1 日
    又是一个不推荐使用 join 的
    除了在分布式分库分表的情况下,我想不出还有别的会使得 join 性能地下的场景
    真以为自己在程序中 merge 数据能快过 db ?
    wysnylc
        3
    wysnylc  
    OP
       2018 年 11 月 1 日
    @glacer #2 来来来,您提供一个跨库事务的解决方案,如何保证同时提交?回滚怎么处理?回滚异常怎么处理?你能接受数据库不一致的错误数据?
    glacer
        4
    glacer  
       2018 年 11 月 1 日
    @wysnylc 没看到我说除了分库分表的情况?
    glacer
        5
    glacer  
       2018 年 11 月 1 日
    @wysnylc 就算是分库分表的情况也不需要完全禁掉 join 的使用,一个良好的中间件是可以根据 sharding key 分析 SQL 判断数据的分布,如果查询的表中的数据都在一个分库中,那么这条 join 的 SQL 是完全可以直接下推到分库执行的。
    wysnylc
        6
    wysnylc  
    OP
       2018 年 11 月 1 日
    @glacer #4 这里讨论的情况就是分布式,跨库的场景 join 带来的问题所以你说的跟我说的有什么关系?
    其次你说的良好的中间件能够提供下名称吗?据我所知目前能够实现强事务的中间件根本没有,都只有弱事务比如 mycat

    支持多租户方案。
    支持分布式事务(弱 xa )。
    支持 XA 分布式事务( 1.6.5 )。

    注意到第二条了吗?
    hexinxucxy
        7
    hexinxucxy  
       2018 年 11 月 1 日
    @wysnylc DRDS 可以完美支持 join
    wysnylc
        8
    wysnylc  
    OP
       2018 年 11 月 1 日
    @hexinxucxy #7 DRDS 是否支持分布式 JOIN ? 它是如何支持复杂 SQL?
    支持大部分的 JOIN 的语义,但对于比较复杂的情况,DRDS 做了一些限制。例如大表之间的 JOIN,由于执行代价过高,速度过慢容易导致性能或者系统不可用等情况,因此请尽量避免。

    以上为官方文档回答,纯粹用性能堆叠出的"join",我认为弊大于利
    wysnylc
        9
    wysnylc  
    OP
       2018 年 11 月 1 日
    wysnylc
        10
    wysnylc  
    OP
       2018 年 11 月 1 日
    @glacer #5 贴一个知乎对 join 的相关讨论 https://www.zhihu.com/question/38038257
    单机情况随便你玩,分布式跨库使用 join 带来的问题远远大于解决的问题,与其找实现 join 的方案不如考虑业务上拆分
    个人认为最终解决跨库事务的方案是量子纠缠
    pexcn
        11
    pexcn  
       2018 年 11 月 1 日
    csdn 差评
    glacer
        12
    glacer  
       2018 年 11 月 1 日
    @wysnylc 我并没有在你贴出的文章中看到明显表明有分布式、分库分表的字样,那么这样的文章就很有可能会误导别人。
    至于你说支持强一致事务的中间件,那就是楼上说的 DRDS,链接: https://helpcdn.aliyun.com/document_detail/71230.html
    而且我们之前讨论的是跨库 Join 的问题,为什么和分布式事务扯上关系呢?真是奇怪。
    wysnylc
        13
    wysnylc  
    OP
       2018 年 11 月 1 日
    @glacer #12 你用 join 吧,我并不会反对,反正最后改的也不会是我. 你认为你是对的那你就是对的
    wysnylc
        14
    wysnylc  
    OP
       2018 年 11 月 1 日
    @pexcn #11 收到,谢谢惠顾
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2453 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 47ms UTC 16:04 PVG 00:04 LAX 09:04 JFK 12:04
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86