2021NETRemotingServer性能分析及利用Loadrunner进行性能测试的方案.docx

2021NETRemotingServer性能分析及利用Loadrunner进行性能测试的方案.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
.NET Remoting Server性能分析及利用 Loadrunner进行性能测试的方案 1 概述 .NET Remot ing被誉为管理应用程序域之间的 RPC的首选技术。应用程序域是公共语言运 行库的隔离单元,它们是在进程内创建并运行的。这与 CLR和非CLR托管的进程之间的进 程间通信(互操作)不同。后一种类型的 RPC通信(特别是 Web上的)一般被认为是 Web服务领域的问题。遗憾的是,这种看似清楚的区分,却由于可以在 IIS下集成.Net Remoting服务器而变得模糊, 通过在IIS中集成.NET Remoting对象,可以将其作为一种 Web服务提供……” Remoting , 简而言之,我们可以将其看作是一种分布式处理方式。从微软的产品角度来 看,可以说 Remoting 就是 DCOM 的一种升级,它改善了很多功能,并极好的融 合到 .Net 平台下。 Microsoft? .NET Remoting 提供了一种允许对象通过应用程序域与另一对象进行交 互的框架。这也正是我们使用 Remoting 的原因。为什么呢?在 Windows 操作系统中,是 将应用 程序分离为单独的进程。这个进程形成了应用程序代码和数据周围的一道边界。如 果不采用进程间通信(RPC机制,则在一个进程中执行的代码就不能访问另一 进程。这 是一种操作系统对应用程序的保护机制。然而在某些情况下,我们需要跨过应用程序域, 与另外的应用程序域进行通信,即穿越边界。其主机与客户端的主 要任务如下: 主机任务 设计服务,选择应用程序域、激活模式、通道、端口和发布 实现Remoti ng主机应用程序域(例如IIS/系统服务)。- ?配置主机激活、通道和协议设置。建议使用配置文件,可以通过调用 Remoti ngCon figurati on.Con figure 力口载。 发布接口,供客户端使用(有关详细信息,请参阅下文中的 接口发布选择”)。- 客户端任务 设计客户端,选择应用程序域和激活模式。 考虑是否需要注册通道和端口。 获取远程类型元数据。 实现客户端应用程序域。 ?配置客户端激活模式和其他类型的信息,如应用程序名称、通道和对象 URI等。建议使 用配置文件,可以通过调用 Remot in gCo nfiguratio n.Co nfigure加载。—? 2 Remoting 解决方案的过程中可能会遇到的错误情况 W)gi 在 任何情况下,都应该记住要使用标准的设备使用和监视方法。事件记录仍是非常有价值 的信息资源,就象网络监视器工具一样,网络监视器可以专门用于详细查看客 户端/服务 器的Remoti ng会话。中间层的 Remoti ng服务器仍可以使用 Visual Studio .NET提供的标准 调试工具进行调试,例如,对于由 IIS集成的Remoting服务器,可以通过向 ASP.NETt助 进程附加调试会话( Visual Studio .Net | Debug [调试] | Processes [进程] | Attach [ 附加]) 来 设置断点(如果资源可用)。但 Remoting 的错误很独特,下面列出了一些。请注意,所 有错误都已使用.NET Framework SDK提供的Basic Remot ing Hello Sample的各版本进行了复 现,服务器和客户端也已在单机上运行。故障现象与在网络链接上的相同,只是由于 HTTP/TCP的超时设置不同,需要相当长的时间才能出现错误。 2.1 丢失 MarshalByRef RS,L 由 于 Remoting 要通过引用以用于给定的类,该类必须只做一件事,就是继承 MarshalByRefObject。假设开发人员忘记做这项工作,我们将得到一个 System.Runtime.Remoting.RemotingException 类型的异常,说明我们有一个 “丢失的 MarshalByRefere nee 是否能正确捕获和处理这个 RemotingException 将取决于程序员。(想想这个开发人员忘 记了他应记住的唯一一件事。) 解决方法是:记住继承 MarshalByRefObject! Dw 2.2 众所周知的服务器激活的错误服务器端点 对于服务器激活, Remoting 服务器将其侦听处声明为端点。该端点一般包括一个对象 URI (远程对象的众所周知名称),一个协议和一个端口号。当然,所有这些都可能配置错 2.3错误的URI 由服务提供的 Basic Remoting Hello Sample的 URI 是 HelloService.soap,如相关的 web.config 文件中所指定: configuration U;T/,P9G sys

文档评论(0)

wangyueyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档