zoukankan      html  css  js  c++  java
  • 使用IIS承载WCF服务

    作者:jiankunking 出处:http://blog.csdn.net/jiankunking


    1、WCF能够方便的通过IIS承载,此承载模型与ASP.NET和ASP.NET Web Service使用的模型相似。

    2、WCF能够在以下操作系统上的IIS版本号上承载
    • Windows XP SP2上的IIS 5.1
    • Windows Server 2003上的IIS 6.0
    • Windows Server 2008或者Windows Vista或者Windows 7上的IIS 7.0
    • 以及IIS兴许版本号
    小注:
    3、在IIS 7.0中提供了一种新的承载服务方式即WAS(Windows Process Activation Service。Windows进程激活服务),使用WAS来承载WCF同意HTTP之外的协议进行激活和网络通信。此环境适合开发可通过WCF支持的不论什么网络协议(包括HTTP、net.tcp、net、.pipe和net.msmq)进行通信的WCF服务。

    在WAS宿主中,能够使用WAS工作进程中的功能,如自己主动激活服务、健康监控和进程。


    要使用WAS宿主,仅仅需创建一个Web网站和工个.svc文件,当中的ServiceHost声明包括服务类的语言和名称。

    以下的代码使用 Service1类。另外,还必须指定包括服务类的文件。这个类的实现方式与定义WCF服务库的方式同样。 
    <%@ ServiceHost Language="C#" Debug="true" Service="Service1" CodeBehind="Service1.svc.cs" %>   
    这不就是平时部署的.svc文件嘛偷笑


    比如:
    4、使用IIS承载的优点:
    • 能够向处理其它不论什么类型的IIS应用程序一样。部署和管理IIS中承载的WCF服务。

    • IIS提供进程激活、执行状态管理和回收功能以提高承载的应用程序的可靠性。
    • 像ASP.NET一样。ASP.NET中承载的WCF服务能够利用ASP.NET共享宿主模型,在此模型中,多个应用程序驻留在一个公共辅助进程中以提高server密度和可伸缩性。
    • IIS中承载的WCF服务与ASP.NET2.0使用同样的动态编译模型,该模型简化了承载服务的开发和部署。


    • IIS承载WCF服务时,IIS5.1和IIS6.0仅限于HTTP通信。
    5、WCF详细写法及部署与IIS在此就不反复演示,详细案例能够參考:

    小注:
    1、个人感觉有了锤子就不是必需用手敲钉子了,所以搞WCF的时候,使用Visual Studio吧,不是必需用文本文件去创建svc等等的文件。

    比方说client应用程序须要 一 个代理来訪问服务。给client创建代理就有3种方式 :
    ● Visual Studio加入服务引用 —— 这个有用程序会从服务的元数据中创建代理类。


    ● ServiceModel元数据有用工具svcutil.exe —— 使用svcutil有用程序能够创建代理类。

    该有用程序从服务中读取元数据 ,以创建代理类。
    ● ChanneldFactory类 —— 这个类由svcutil有用程序生成的代理使用 ,然而,它也能够用于以编程方式创建代理。

            个人还是感觉 Visual Studio比較自己主动化一些偷笑
    2、据说部署WCF,须要激活WCF HTTP激活组件。详细激活方式例如以下:

    安装完毕后。能够在:IIS管理器----处理程序映射中看到:svc-Integrated 项,说明成功安装了

    可是有个问题就是。我部署WCF时候,么有激活这个服务。为啥WCF也能执行呢?希望有知道的朋友帮忙解答一下。谢谢。


  • 相关阅读:
    unexpected inconsistency;run fsck manually esxi断电后虚拟机启动故障
    centos 安装mysql 5.7
    centos 7 卸载mysql
    centos7 在线安装mysql5.6,客户端远程连接mysql
    ubuntu 14.04配置ip和dns
    centos7 上搭建mqtt服务
    windows eclipse IDE打开当前类所在文件路径
    git 在非空文件夹clone新项目
    eclipse中java build path下 allow output folders for source folders 无法勾选,该如何解决 eclipse中java build path下 allow output folders for source folders 无法勾选,
    Eclipse Kepler中配置JadClipse
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/7059127.html
Copyright © 2011-2022 走看看