mysql 这个延迟问题 有解决方案或者尽量降低发生的办法吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
kalsolio
V2EX    MySQL

mysql 这个延迟问题 有解决方案或者尽量降低发生的办法吗?

  •  
  •   kalsolio 2016-04-28 15:53:03 +08:00 3622 次点击
    这是一个创建于 3527 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在有一个 一主多从的构架 一个从服务器的程序拿到一些数据 尽快的标记已读取 但是其他从服务器的程序还是有拿到那些标记的数据 每个从服务器拿取数据都不的不比较快 这个问题有什么好的办法吗

    9 条回复    2016-04-29 08:51:02 +08:00
    kalsolio
        1
    kalsolio  
    OP
       2016-04-28 15:57:00 +08:00
    从服务器都在获取数据去处理 但是不允许二次处理
    现在一个从拿到之后 尽快的去标记我拿走了
    但是其他的从 还是会发生拿走那些不应该获取的数据
    kalsolio
        2
    kalsolio  
    OP
       2016-04-28 15:58:46 +08:00
    特别容易发生在 需要处理的数据比较少的时段.
    lecher
        3
    lecher  
       2016-04-28 16:06:07 +08:00 via Android
    MySQL 上面还要分发到从服务器本身就有延时,做这个加锁的事务处理比较麻烦。

    这是个典型的任务分发业务,可以考虑用消息队列,或者用支持队列的数据库进行处理,业务设计上比较简单。

    如果延时要求不是特别高, MySQL 可以考虑用在主库 update taskerlist set tasker = uid where tasker=0 这类的语句。
    查询没有被认领的并直接更新为认领状态,再去取业务数据,这个延时会小一些。
    junweiyang
        4
    junweiyang  
       2016-04-28 16:06:25 +08:00 via Android
    升级数据库版本 (逃
    aru
        5
    aru  
       2016-04-28 16:13:28 +08:00
    每个程序取个名字,表上增加一个字段 worker ,默认值为 NULL
    标记的时候加个限制条件
    update xxxtable set worker='myname' where 原来的限制条件 and worker is NULL;
    如果 affected row 为 0 ,那么表明被其他程序取走了,放弃这个任务,继续取其他任务
    Infernalzero
        6
    Infernalzero  
       2016-04-28 16:49:26 +08:00
    可以试试 5.7 ,主从同步支持多线程了
    kalsolio
        7
    kalsolio  
    OP
       2016-04-28 17:03:59 +08:00
    realpg
        8
    realpg  
    PRO
       2016-04-28 22:54:07 +08:00
    明显你这是个 MQ 的需求,你非得弄成 MYSQL 复制……
    kalsolio
        9
    kalsolio  
    OP
       2016-04-29 08:51:02 +08:00
    @realpg 嗯 系统的部分确实是 MQ 的需求 但是整体上 还是需要用主从结构才行,还有很多别的类型数据需要主从来降低主库压力.
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     949 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 19:41 PVG 03:41 LAX 11:41 JFK 14:41
    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