一. 如何使用iis作为激活代理
.net remoting 提供了两种方法来避免人工启动服务器.第一个是将服务器应用程序当做一个服务来实现.可以编写一个从 system.serviceprocess.service派生的服务,重载其中关键的需方法例如onstart与onstop.将服务器当做一个服务来实现的好处是你可以配置该服务以便系统启动时能自动运行该服务. 【程序编程相关:Hitachi与NetApp性能哪个好?】.net remoting与dcom之间的一个区别是前者不支持自动运行的服务器进程.需要人工启动服务器进程来注册用来远程激活的类与监听请求.而对于dcom,当远程客户端调用cocreateinstanceex或者其他激活api时,会自动运行服务器进程. 【推荐阅读:SAN系统可以与NAS机头组合吗?】1.不再需要编写一个用来注册可远程化的类与监听端口的服务器,iis就是服务器. 【扩展信息:NAS系统是否适合磁盘到磁盘备份?】第二个方法是使用iis作为激活代理.iis本身就是一个服务,在大多数web servers运行时会一直启动.而且iis能够通过使用.net remoting机制来响应客户端激活对象的请求.使用iis有以下几个好处: 2.可以使用iis鉴别远程调用者,也可以使用ssl来保护数据. 3.可以使用iis来管理端口.如果在一个机器上部署了两个传统的应用程序服务器,则需要你来保证这两个服务器使用不同的端口.使用iis作为宿主,则iis可以选择端口,这样可以简化发布与管理. iis支持服务器端激活对象与客户端激活对象.可以使用程序注册(在global.asax中),也可以使用声明注册(在web.config中). 1.服务器端激活对象 下面的web.config注册了使用iis激活的clock类: <configuration> <system.runtime.remoting> <application> <service> <wellknown mode="singlecall" type="clock, clockserver" objecturi="clock.rem" /> </service> </application> </system.runtime.remoting> </configuration>注意clock的uri:clock.rem.使用iis注册的uri必须以.rem或者.soap结束,因为该扩展对应到iis原数据中的aspnet_isapi.dll与machine.config中的.net remoting 子系统.... 下一页