WCF PeerChannel介绍

原文:http://www.ppcn.net/wap.aspx?nid=3444&p=2&cp=2&cid=2&sp=6

PeerChannel 这个术语通常用于指代 Windows Communication Foundation 的 P2P 功能。无论 Windows Communication Foundation 中的 PeerChannel 指代的是什么,它实际上消除了通常与 P2P 应用程序开发相伴的所有复杂性,并且在我看来,它是 P2P 应用程序开发领域的一个创新性突破。 

  PeerChannel 网格 PeerChannel 网格是专为消息扩散而设计。但 PeerChannel 包含了可将消息传播到网格的一部分而不是整个网格的机制。因此,更准确地说,PeerChannel 网格是专为多方消息传送而设计。 

  PeerChannel 网格的结构由每个节点所连接的邻居数量所控制。为此,PeerChannel 网格会主动维护网格的结构。这种维护的作用就是使网格性能稳健并且分布均匀。更具体点说,网格中的节点会设法将连接的邻居数保持在两到七个之间。这些阈值可使对本地节点的资源需求与保持网格稳健性之间取得平衡。 

  如果某节点在进入网格时带有三个邻居,然后其中两个邻居离开网格,则该节点将开始一个维护周期以试图获取新的邻居连接。同样,如果一个节点连接的邻居少于七个,则它将接受新连接,直到它具有七个邻居连接时为止。当一个 PeerChannel 节点连有三个邻居时,则认为它处于理想的连接状态,但一个节点将接受多达七个邻居,以便低于邻居数最低阈值的节点可以迅速获得新的邻居。应注意的是,您的应用程序代码不能更改这些阈值或对网格的维护实施任何控制,这一点很重要。这些细节问题完全由 PeerChannel 基础结构逐个节点地处理。 

  PeerChannel 提供了 PNRP 解析程序和自定义解析程序,以供用作预期节点发现网格中已有节点地址的方法。无论选择哪个解析方法,主旨都是一样的:将网格名传递到解析程序并接收网格中其他节点的 IP 地址列表。一旦解析进程生成地址列表,预期 PeerChannel 节点就并发连接到每个地址。当 PeerChannel 网格中已有的某节点收到其中一个连接请求时,它可以接受或拒绝该连接。如果接受该连接,则现有节点会向新连接的节点发送一条欢迎消息,消息中除了其他内容之外,还包含网格中其他节点的地址列表。如果拒绝该连接,则现有节点会向预期节点发送一条拒绝消息,消息中包含拒绝理由以及网格中其他节点的地址列表。 

  这里的重要一点是,网格名解析(通过 PNRP 解析程序或自定义解析程序执行)不是向 PeerChannel 中预期节点返回地址列表的唯一方式。与将网格名解析作为预期节点获取地址的唯一方法相比,此特性可使节点更快速地进入理想的连接状态。此外,这一特性使网格中的节点可对节点拥有的邻居数(这一因素会进而影响网格的稳健性)进行控制。 

  PeerChannel 网格内的通信被调整为尽量减少重复性的消息传递。当网格中的某节点向该网格发送消息时,实际上是在向其邻居发送消息。当收到消息后,每个邻居都会检验该消息,然后将其转发给自己的邻居。如果一个 PeerChannel 节点从某邻居收到消息,它不会将此消息转发回该邻居。此外,如果一个 PeerChannel 节点经常从某邻居那里收到先前已收到并处理过的消息,则与该邻居的连接可能会在下一个维护周期中终止。这些功能将通过每个节点上的本地高速缓存来实现。在内部,PeerChannel 网格中的每个节点都会对 WS-Addressing 消息 ID 的值和传送消息的邻居的标识符进行缓存处理。节点在决定向哪些邻居传送该消息时会检查这个高速缓存。将这些功能相结合后,会将网格调整为以最低的重复率和网络带宽消耗来向网格中的各节点传送消息。 

  如前所述,PeerChannel 节点还可以将消息发送给网格中节点的子集。这可以通过向消息分配一个跳跃计数来实现,这实际上是跟踪转发消息所经由的节点数的方式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的公寓报修管理系统,源码+数据库+毕业论文+视频演示 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本公寓报修管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此公寓报修管理系统利用当下成熟完善的Spring Boot框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的MySQL数据库进行程序开发。公寓报修管理系统有管理员,住户,维修人员。管理员可以管理住户信息和维修人员信息,可以审核维修人员的请假信息,住户可以申请维修,可以对维修结果评价,维修人员负责住户提交的维修信息,也可以请假。公寓报修管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 关键词:公寓报修管理系统;Spring Boot框架;MySQL;自动化;VUE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值