科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道[冷枫]信道、接收器、接收链和信道接受提供程序

[冷枫]信道、接收器、接收链和信道接受提供程序

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

信道、接收器、接收链和信道接受提供程序

作者:冷枫 来源:CSDN 2007年9月21日

关键字: 冷枫 接收链 信道 提供程序

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共2页)

为了扩展.Net Remoting,定制接收器(Sink)和信道接受提供程序(Channel Sink Provider),改变.Net Remoting的缺省行为,需要先了解.Net Remoting的相关概念及其运行机制。

下面先了解一些基本概念:

信道(Channel-是跨远程处理边界(无论是在应用程序域、进程还是计算机之间)在应用程序之间传输消息的对象。信道可以在终结点上侦听入站消息,向另一个终结点发送出站消息,或者两者都可以。

信道必须实现 IChannel 接口,该接口提供诸如 ChannelName ChannelPriority 这样的属性。专用于在特定端口上侦听特定协议的信道实现 IChannelReceiver,而专用于发送信息的信道实现 IChannelSender(注:IChannelReceiverIChannelSender接口都继承IChannel 接口)。TcpChannel HttpChannel 对象都实现这两种接口,因此它们可用于发送或接收信息。

.Net Remoting Framework提供了TcpChannel HttpChannel两个信道的实现。

在发送消息之前或接收消息之后,信道(Channel)沿着信道接收对象链(a chain of channel sink objects)发送每个消息。该接收链(sink chain)包含基本信道功能所需的接收器(Sink(如格式化程序接收器FormatterSink、传输接收器TransportSink或堆栈生成器接收器StackBuilderSink),但是您可以自定义信道接收链以便用消息或流执行特殊任务。

信道接收链(Sink Chain处理任何发送到应用程序域或从应用程序域发送的消息。此时,您只有消息,但是您可以任意操作该消息,而后面的处理将使用您在处理之后返回给系统的消息。这是实现日志记录服务、任何种类的筛选器或者客户端或服务器上的加密或其他安全措施的理所当然的位置。以下插图显示基本信道接收链的结构。



每个信道接收器(Channel Sink都处理流,然后将流传递到下一个信道接收器,这意味着您的接收器之前或之后的对象应当知道该如何处理传递给它们的流。(Sink/Channel Sink是同一个描述。)

StackBuilderSink 对象是服务器上远程对象前的最后一个消息接收器。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章