托管承载服务

上传人:zhu****ei 文档编号:252994275 上传时间:2024-11-27 格式:PPTX 页数:26 大小:1.39MB
返回 下载 相关 举报
托管承载服务_第1页
第1页 / 共26页
托管承载服务_第2页
第2页 / 共26页
托管承载服务_第3页
第3页 / 共26页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,托管(承载服务),课程内容:,宿主概述,自承载(自宿主(,Self-hosting,),在,IIS,中承载,在,Windows Activation Service (WAS),中承载,(,(WAS),宿主),Windows service,中,服务寄宿的本质,WCF,服务寄宿的本质是为服务创建或指定一个进程,并为之创建一个监听和执行的运行环境。,对服务寄宿的唯一途径就是为服务类型创建并开启,ServiceHostBase,对象。由于,WCF,已经为我们定义了一个功能强大的自定义,ServiceHostBase,对象:,ServiceHost,,所以一般情况下只要直接使用,ServiceHost,进行服务寄宿。,宿主环境,Self-hosting,控制台应用程序,,Windows,应用程序,,Windows,服务,HTTP, TCP, named pipes, Microsoft Message,Queuing (MSMQ),IIS/Microsoft ASP.NET,HTTP,Windows Activation Service,HTTP, TCP, named pipes, MSMQ,Windows,服务,自宿主(,Self-Hosting,),ServiceHost,实例必须进行初始化来为服务暴露出端点(,endpoint,),每个,ServiceHost,与指定的服务类型(接口)相关联,Self-hosting,环境手动创建实例,核心方法:,Open() ,打开信道监听器,Close() ,关闭信道监听器,两种方式:,1.,编写代码实现配置,2.,配置文件配置,代码方式:,static void Main(string args),using (ServiceHost host = new ServiceHost(typeof(HelloIndigo.HelloIndigoService),host.AddServiceEndpoint(typeof(HelloIndigo.IHelloIndigoService); new NetTcpBinding(), net.tcp:/localhost:9000/HelloIndigo);,host.Open();,Console.WriteLine(,服务已经启动!,);,Console.ReadLine();,注意:,ServiceHost,需要手动打开,配置方式:,可以承载多服务,可以承载多服务,例题:本章:托管多个服务实现三种,MEP,例题:托管多个服务(在一个宿主中发布多个端点),public class Program,public static void Main(string args),try,Type type1 = typeof(Job);,Type type2 = typeof(OneWayJob);,Type type3 = typeof(NormalJob);,ServiceHost server1 = new ServiceHost(type1);,ServiceHost server2 = new ServiceHost(type2);,ServiceHost server3 = new ServiceHost(type3);,server1.Open(); server2.Open(); server3.Open();,Console.WriteLine(,服务已启动,);,catch (Exception ex),Console.WriteLine(ex.ToString();,Console.ReadKey();,Hosting,配置,Clieng,配置,注意:不能给同一个服务指定多个相同的基地址(一个服务可以托管到多个地址),不同的服务可以,区别:托管多个服务和一个服务托管多次,看书,p45,程序清单,比较和前例的不同,P47,客户端,通过名称指定端点,IIS,承载:,IIS,本身可以看作一个自动化的进程激活工具,IIS,承载,IIS,承载,IIS,承载,步骤:,创建一个,IIS,虚拟应用程序,创建一个服务实现的,svc,文件,并在配置文件中包含,Svc,文件内容,:,请求根据文件,.svc,在,IIS,中的扩展映射到,WCF,中,(服务类型与,ServiceHost,的声明相关,,ServiceHost,实例化为服务类型),把,svc,文件和配置文件复制到,IIS,虚拟目录,如果托管不行就(,dll,、,svc,和,web.config,文件拷贝出来放到单独的文件夹里面进行,IIS,寄宿),在,Windows,进程激活服务,(WAS),中承载,通过,WAS,(,Windows Process Activation Service,)实现了非,HTTP,的请求监听,可以将这种方式的服务寄宿称为基于,WAS,的服务寄宿。本质上是通过,IIS 7,实现基于非,HTTP,的服务寄宿,在,Windows,进程激活服务,(WAS),中承载,安装,WCF,所需的激活组件(,p232,),步骤和在,IIS,中承载类似,将,Services,所在的目录映射为,IIS,下的虚拟目录,在根目录下创建一个,Web.config,,配置,WCF,服务寄宿相关的设置,为站点设置,TCP,绑定,为,Web,应用添加支持协议(图,1,图,2,),由于,ASP.NET,应用在运行的时候默认从根目录下的,Bin,子目录加载,Assembly,,而,Services,项目默认编译的目标目录为,BinDebug|Release,,所以我们需要通过修改项目属性将编译的目标目录设为,Bin,(图,3,)。,客户端程序通过访问,WCF,服务的,.SVC,文件的方式进行服务的调用,所以在相应终结点中的地址为,.SVC,所在的地址。, :,图,1,默认网站,图,2,图,3,Windows,服务中,添加,windows,服务,添加配置文件,app.config,通过设计界面设置,windows,服务设置,serviceInstaller,属性(,display name,服务中显示名称,,starType,自动开启、手动开启和禁用,默认手动),编译后生成安装文件,安装该,exe,文件,,installutil.exe,位于目录下,直接进,cd % windir%,installNtil.Exe e,:,路径,小结:,P,(,250,表,7.2,),
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!