管道—过滤器简介 软件体系结构

管道-过滤器, Pipes and Filters是面向数据流的软件体系结构。

它为处理数据流的系统提供了一种结构。
单步数据处理封装在一个过滤器中,数据在过滤器之间的管道传输。
以便实现对数据的多次操作。

如下图所示:
在这里插入图片描述
data source(数据源),filter(过滤器)和data sink(数据汇点)三者,使用pipe(管道)进行连接
过滤器视为组件。
管道视为连接件。
管道将一个过滤器的输出传给另一个过滤器的输入。

优点:
1.高效的并行效率(灵活使用active(主动) 过滤器)
2.过滤器可以重组/重用/可替换
3.不需要中间保存

缺点:
1.数据传输和转化开销大
2.错误处理复杂

过滤器有主动/被动之分(active/passive)
主动过滤器是指从上一级管道中取出pull数据
被动过滤器指接受上一级管道中的数据只接受push进来的数据

介绍几个情况:

Write,向下一级组件写操作(push)
data,数据流的流向
Read,向上一级组件读(pull)
Transform,数据转化操作

[1] 主动数据源 + 被动过滤器 + 被动数据汇点
在这里插入图片描述
[2] 被动数据源 + 被动过滤器 + 主动数据汇点
在这里插入图片描述

[3] 被动数据源 + 主动过滤器 + 主动数据汇点
在这里插入图片描述
[4] 被动数据源 + 多种主动过滤器 + 被动数据汇点
在这里插入图片描述

图片参考B站up主,老曹同学的马甲线,仅个人学习记录。侵删。

  • 13
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值