资源控制

最近更新时间: 2020-11-03 15:29:14

  • 不允许存在单次更新超过1w行的大事务,通过程序拆分成小于1w行的事务多次执行
  • 数据导入时必须按以上要求控制每次提交事务的大小,批量提交
  • 对关键资源UPDATE时,使用SELECT FOR UPDATE 来获取行锁,根据业务特点可以加上wait 时间限制,并在应用中对相应的出错、返回进行捕获,设计合适的重做、告警措施,从而避免关键资源无法获取而造成UPDATE堆积,尽量降低问题影响范围
  • 业务高峰期不得执行DDL语句
  • 不同业务使用同样的顺序来操作对象。应该根据对象的重要程度来安排锁定申请顺序:越是公共的、重要的、稀缺的资源,越应该最后申请最早释放
  • 操作需要锁定资源时,要求锁定最少量的对象和记录数,完成后迅速结束事务