41、架构级异常处理系统:ALEx与FaTC2框架解析

架构级异常处理系统:ALEx与FaTC2框架解析

在软件开发中,构建容错的组件化应用是一个重要的目标。为了实现这一目标,我们需要有效的异常处理机制。本文将介绍一种架构级异常处理系统ALEx以及实现该系统的面向对象框架FaTC2,同时通过一个应用示例展示其具体应用。

1. 控制流的延续

ALEx采用终止模型,即当一个组件在处理服务请求时抛出异常,且该异常被另一个组件成功处理后,执行将由后者恢复。以下是一个包含客户端组件和服务器iC2C的C2架构示例,展示了异常成功处理后控制流的延续:
1. 客户端组件向服务器组件请求服务;
2. 服务器正常活动尝试处理服务请求;
3. 服务器正常活动抛出异常,该异常被服务器异常活动接收;
4. 服务器异常活动尝试处理异常;
5. 服务器异常活动处理异常失败并抛出失败异常;
6. 客户端组件接收异常并将其路由到客户端异常活动;
7. 客户端异常活动处理异常,并向客户端正常活动发送恢复正常请求,指示应恢复处理;
8. 客户端正常活动恢复处理。

下面是这个过程的mermaid流程图:

graph LR
    A[客户端组件] -->|请求服务| B[服务器组件]
    B -->|尝试处理请求| C[服务器正常活动]
    C -->|抛出异常| D[服务器异常活动]
    D -->|尝试处理异常| E{是否处理成功}
    E -- 否 -->|抛出失败异常| F[客户端组件]
    F -->|路由异常| G[客户端异常活动]
    G 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值