zoukankan      html  css  js  c++  java
  • “管道和过滤器”模式中管道的种类

         管道和过滤器模式,与职责链模式相比。一者是适用范围不一样,管道和过滤器模式是在架构层次的模式,它的元素是各个子系统或者程序。而职责链体现了组件间的调用关系。另外一个显著区别是,职责链模式中,一个对象指针的函数调用,就将指令转移到另外一个组件了。而“管道和过滤器”模式存在一个可以用多种技术实现的管道。
        管道
            严格的先进先出,
        消息队列
            非严格先进先出,可以选择性地读取想要的消息
        文件
            不提供同步机制,需要应用程序考虑
        共享内存
            不提供同步机制,需要应用程序考虑
        SOCKET
            适用于跨主机计算
     
        如果单主机情况,消息队列使用的频率较高。由于存在需要传递较大数据体的情况,可以将消息队列和共享内存封装为个性化的“消息队列”。比如实际要传递的数据放在共享内存,而将消息体中记录实际数据在共享内存中的位置。这种方式结合了消息队列的灵活性和共享内存的较高访问速度。
        管道是消息队列的有力竞争对手。性能方面,与消息队列在一个数量级上。但在使用方面,消息队列更加灵活。
        如果对于管道中的数据的正确性和完整性有特别严格的要求,或者要将数据提供给第三方使用,那么通过文件落地管道数据,是更安全的选择。
  • 相关阅读:
    第九届蓝桥杯B组决赛-调手表
    第九届蓝桥杯B组决赛-搭积木
    洛谷P2680(树上差分+二分)
    线段树+扫描线+离散化
    hdu3911(线段树区间异或+区间和并+查询最区间大连续1的个数)
    线段树与位运算
    计蒜客Distance on the tree(主席树+LCA)
    洛谷P4742(tarjan缩点+拓扑DP)
    出题人的手环
    SP263 PERIOD
  • 原文地址:https://www.cnblogs.com/yubing/p/3780869.html
Copyright © 2011-2022 走看看