zoukankan      html  css  js  c++  java
  • WCF 服务的ABC之绑定(六)

    绑定 Binding

    绑定是开发人员控制WCF程序与其他消息交互的主要手段。从功能上看,绑定创建了通道工厂惑通道侦听器的堆栈对象。绑定直接惑间接创建的对象是WCF实现各种消息功能(例如,传输、安全性、事务性)的主要方式。一个绑定封装了诸如传输协议、消息编码、通信模式、可靠性、安全性、事务传播,以及互操作性等相关选项,使得它们保持一致。

    五种常用绑定

    基本绑定

    • 对应BasicHttpBinding类
    • 基本绑定能够将WCF服务公开为传统的ASMX Web服务,使得原客户端能够与新的服务协作

    TCP绑定

    • 对于NetTcpBinding类
    • TCP绑定使用TCP协议实现在Intranet中跨机器的通信,支持多种特性,包括可靠性、事务性、安全性,以及WCF之间通信的优化,前提是它要求客户端与服务都必须使用WCF

    IPC绑定

    • 对应NetNamePipeBingding类
    • 他使用命名管道为同一机器通信进行传输
    • 这种绑定最安全,因为它不是接受来自机器外的调用
    • 它是性能最佳的绑定,因为IPC协议比TCP协议更加简单

    Web服务(WS)绑定

    • 对应于WSHttpBinding类
    • WS绑定使用Http和Https进?行传输,为基于Intranet的通信提供多种特性(如可靠性、事务性和安全性),这些特性均遵循WS-*标准
    • 该绑定用来与支持WS-*标准的系统进行互操作

    MSMQ绑定

    • 对应与NetMsmqBinding类
    • 使用MSMQ进行传输,用于支持断开的队列调用
    • ·WCF标准绑定

     

    格式与编码

    名称

    传输协议

    编码

    互操作性

    BasicHttpBinding

    HTTP/HTTPS

    Text

    +

    NetTcpBinding

    TCP

    Binary

    -

    NetNamedPipeBinding

    IPC

    Binary

    -

    WSHttpBinding

    HTTP/HTTPS

    Text,MTOM

    +

    NetMsmqBinding

    MSMQ

    Binary

    -

    • 文本编码通常允许WCF服务(或客户端)能够通过HTTP协议与其他服务(或客户端)通信,而不用考虑它所使用的技术及通信传输的范围
    • 二进制编码格式通过TCP、IPC或MSMQ可以获得最佳的性能,但它是以牺牲或操作性为代价,只支持WCF到WCF的通信

     

    几种常见的绑定类型

    具体绑定规则根据具体需求而定。

    Binding名称

    Configuration Element

    描述

    BasicHttpBinding

    basicHttpBinding

    一个指定用符合基本网络服务规范通讯的binding,它用http进行传输,数据格式为text/xml

    WSHttpBinding

    wsHttpBinding

    一个安全的通用的binding,但它不能在deplex中使用

    WSDualHttpBinding

    wsDualHttpBinding

    一个安全的通用的binding,但能在deplex中使用

    WSFederationHttpBinding

    wsFederationHttpBinding

    一个安全的通用的支持WSF的binding,能对用户进行验证和授权

    NetTcpBinding

    netTcpBinding

    在wcf应用程序中最适合跨机器进行安全通讯的binding

    NetNamedPipeBinding

    netNamedPipeBinding

    在wcf应用程序中最适合本机进行安全通讯的binding

    NetMsmqBinding

    netMsmqBinding

    在wcf应用程序中最适合跨机器进行安全通讯的binding,并且支持排队

    NetPeerTcpBinding

    netPeerTcpBinding

    一个支持安全的,多机交互的binding

    MsmqIntegrationBinding

    msmqIntegrationBinding

    一个用于wcf与现有msmq程序进行安全通讯的binding

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    excel成绩统计公式
    freebsd Cacti
    图片处理程序
    php 图片水印+文字水印函数,但是不能设置透明
    PHP计算两个时间之差的函数(年,月,周,日,小时,分钟,秒数)
    php图片水印(可以设置透明度)
    使用函数递归实现基于PHP和MySQL的动态树型菜单[转]
    PHP实现MYSQL备份
    FreeBSD备忘录转载
    超级简单但超级实用的 PHP 的 mysql 类
  • 原文地址:https://www.cnblogs.com/birdwawe/p/4583703.html
Copyright © 2011-2022 走看看