-
Notifications
You must be signed in to change notification settings - Fork 1.2k
异常处理
连接和执行异常处理
单库,非事务
-
前端连接异常 a)关闭正在执行的后端连接
-
后端连接异常 a)关闭该后端连接 b)消息通知前端,执行异常。
-
后端业务异常 a)释放该后端连接 b)消息通知前端,执行异常。
单库,事务
1.前端连接异常 a)关闭当前正在执行的后端连接 b)回滚并释放执行完成的后端连接
2.后端连接异常 a)关闭该后端连接 b)回滚并释放执行完成的后端连接 c)标识当前连接不可继续事务,除非前端主动回滚当前事务。 d)消息通知前端,执行异常。(当前事务不可继续)
3.后端业务异常 a)保持该后端连接 b)消息通知前端,执行异常。(当前事务可继续)
多库,非事务
1.前端连接异常 a)关闭正在执行的后端连接 b)释放执行完成的后端连接
2.后端连接异常 a)关闭该后端连接 b)等待其他后端连接执行结束 c)释放执行完成的后端连接 d)消息通知前端,执行异常。
3.后端业务异常 a)等待其他后端连接执行结束 b)释放所有连接 c)消息通知前端,执行异常。
多库,非事务(隐含事务:修改数据的语句在多个分库中执行)
1.前端连接异常 a)关闭正在执行的后端连接 b)回滚并释放执行完成的后端连接
2.后端连接异常 a)关闭该后端连接 b)等待其他后端连接执行结束 c)回滚并释放执行完成的后端连接 d)消息通知前端,执行异常。
3.后端业务异常 a)等待其他后端连接执行结束 b)回滚并释放所有连接 c)消息通知前端,执行异常。
多库,事务
1.前端连接异常 a)关闭正在执行的后端连接 b)回滚并释放执行完成的后端连接
2.后端连接异常 a)关闭该后端连接 b)等待其他后端连接执行结束 c)回滚并释放执行完成的后端连接 d)标识当前连接不可继续事务,除非前端主动回滚当前事务。 e)消息通知前端,执行异常。(当前事务不可继续)
3.后端业务异常 a)等待其他后端连接执行结束 b)回滚并释放所有连接 c)标识当前连接不可继续事务,除非前端主动回滚当前事务。 d)消息通知前端,执行异常。(当前事务不可继续)