11、基础设施依赖模式与模块共享实践

基础设施依赖模式与模块共享实践

1. 中介者模式

在基础设施即代码(IaC)中,适配器和外观模式能隔离变更并便于管理单一依赖,但IaC常包含复杂的资源依赖。为理清这些依赖关系,可构建自动化机制来安排IaC创建资源的时间和方式。

例如,在经典的服务器和网络示例中,若要添加防火墙规则以允许SSH访问服务器的IP地址,需先确保服务器存在;而创建服务器又需网络已存在。这就需要自动化来处理防火墙、服务器和网络之间复杂的关系。

中介者模式如同机场的空中交通管制,负责组织资源间的依赖关系,并根据需要创建或删除对象。其定义为:组织基础设施资源间的依赖关系,并包含基于这些依赖创建或删除对象的逻辑。

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

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

class Mediator:                                       
    def __init__(self, resource, **attributes):
        self.resources = self._create(resource, **attributes)

    def _create(self, resource, **attributes):            
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值