为了账号安全,请及时绑定邮箱和手机立即绑定

使用 JMeter 对本地 IIS 中托管的 WCF 服务进行负载测试

使用 JMeter 对本地 IIS 中托管的 WCF 服务进行负载测试

C#
忽然笑 2023-09-24 11:17:12
我的要求是对本地 IIS 服务器中托管的 WCF 服务进行负载测试。我们正在努力提高 WCF 服务的性能。在 PROD 环境中,WCF 服务和使用该服务的桌面应用程序也驻留在同一台计算机中。因此,为了确定 WCF 服务的现有性能基准,我尝试使用 JMeter 通过在托管服务的同一台计算机上运行该服务来对服务进行负载测试。我使用 JMeter 的 HTTP 测试脚本记录器来捕获从桌面应用程序到 WCF 服务的任何请求,以便稍后能够增加线程计数来获取性能测量结果。问题是我无法捕获发送到本地 IIS 服务器中托管的服务的任何请求。但是,如果我在单独的服务器中托管相同的服务,并从运行消费桌面应用程序的计算机上执行 Jmeter,那么 Jmeter 就能够捕获对该 Web 服务器的所有传出请求。是否可以记录服务和消费桌面应用程序都驻留在同一台计算机上的请求?当前配置我使用 8895 作为 Jmeter 代理中的端口号Windows 中手动设置代理(使用 Jmeter 中配置的相同端口号)桌面应用程序配置文件(将请求发送到本地服务)    <bindings>        <wsHttpBinding>            <binding name="WSHttpBinding_IPayment" proxyAddress="http://127.0.0.1:8895" useDefaultWebProxy="false" bypassProxyOnLocal="false">                                     <security mode="None" />            </binding>                    </wsHttpBinding>            </bindings>    <client>      <!--<endpoint address="http://10.2.179.100/PaymentService/Payment.svc " binding="wsHttpBinding"-->                            <endpoint address="http://127.0.0.1:88/Payment.svc" binding="wsHttpBinding"                    bindingConfiguration="WSHttpBinding_IPayment" contract="PaymentServiceReference.IPayment"            name="WSHttpBinding_IPayment" />    </client></system.serviceModel>
查看完整描述

1 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

您可能需要添加Microsoft Loopback Adapter才能捕获链路本地流量

https://img2.sycdn.imooc.com/650faa890001e73a09720712.jpg

  1. 您可能需要设置系统级 HTTP 代理,例如:

    netsh winhttp set proxy 127.0.0.1:8895


查看完整回答
反对 回复 2023-09-24
  • 1 回答
  • 0 关注
  • 82 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信