10、基础设施代码中的模式与模块管理

基础设施代码中的模式与模块管理

1. 适配器模式的问题与解决

在基础设施代码中,适配器模式可用于映射不同资源的字段。但使用适配器时,需要对其进行故障排除和测试,以确保字段映射正确。例如,若打破了通用角色与 GCP 角色之间的契约,会导致基础设施代码运行失败。因此,要维护和更新适配器中的正确映射,以降低失败风险。

不过,使用适配器会使故障排除变得更困难,因为该模式会模糊依赖于特定适配器属性的资源。当出现错误时,需要调查是源模块输出的字段错误、适配器中的属性不正确,还是依赖模块消耗的字段有误。

2. 中介者模式

当基础设施代码存在复杂的资源依赖关系时,可使用中介者模式。以在服务器和网络示例中添加防火墙规则为例,只有服务器存在时才能创建防火墙规则,而只有网络存在时才能创建服务器。中介者模式就像机场的空中交通管制,负责组织资源之间的依赖关系,并根据需要创建或删除对象。

以下是使用 Python 实现中介者模式的示例代码:

import json
from server import ServerFactoryModule    #A
from firewall import FirewallFactoryModule    #A
from network import NetworkFactoryModule    #A


class Mediator:    #B
    def __init__(self, resource, **attributes):
        self.resources = self._create(resource, **a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值