读写分离的问题

26 阅读1分钟

背景

现在假如我们有个表wms_Receipt和wms_ReceiptDetail表,wms_Receipt表示收货的主表,wms_ReceiptDetail表示收货的子表,子表有个状态,为准备,完成,准备的意思就是没有收货,完成的意思就是收货完成,我们用得到mycat做读写分离,然后读写之间有延时

问题

现在我对一行明细做了收货的操作,因为读写分离的延时问题,导致我第一个收货完成了,刷新页面的时候,查的如果是从库的话,那么还有这个明细,且如果对这个明细的状态进行校验的话,我还是得到的状态为准备,下面我会在库存表里面insert一条记录,因为读写分离的问题,导致了虚增库存

解决方法

  1. 在查的时候,强制走主库
  2. 把读写分离的延时控制到0,这个怎么做,在MySQL45讲的第34讲