浅谈管道模型(Pipeline)

本篇和大家谈谈一种通用的设计与处理模型——Pipeline(管道)。

Pipeline简介

Pipeline模型最早被使用在Unix操作系统中。据称,如果说Unix是计算机文明中最伟大的发明,那么,Unix下的Pipe管道就是跟随Unix所带来的另一个伟大的发明【1】。我认为管道的出现,所要解决的问题,还是软件设计中老生常谈的设计目标——高内聚,低耦合。它以一种“链式模型”来串接不同的程序或者不同的组件,让它们组成一条直线的工作流。这样给定一个完整的输入,经过各个组件的先后协同处理,得到唯一的最终输出。

Pipeline模型的应用

以下列举了,我熟悉或者有所了解的典型pipeline模型的应用。

公司.net web程序员很多,那么首先就谈谈asp.net。一个http请求到达http服务器IIS之后,就是经过pipeline模型被处理的。参见下图:


说明一下,这幅图,并没有下面的图形来得直观。它的侧重点在于展示管道中各个组件处理事件触发的时序图,而不是pipeline模型。但如果你思考以下,也能体会到其中“管道”的概念(注意右面循环图标,如果需要比划一下的话,就是一个U逆时针旋转90度的形状)。

最后,我还是决定上个清晰点的图:

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值