加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

需要在两个.NET进程之间快速通信

发布时间:2020-12-17 07:19:54 所属栏目:百科 来源:网络整理
导读:所以我有以下设置: 一方面使用.NET dll的VB6应用程序 另一端是.NET服务 VB6应用程序使用一个小型接口DLL与我们的新基础设施(服务等)进行通信,并且几乎无法在功能上进行更改.我们选择使用带有这样的绑定的WCF system.serviceModel client endpoint address="
所以我有以下设置:

>一方面使用.NET dll的VB6应用程序
>另一端是.NET服务

VB6应用程序使用一个小型接口DLL与我们的新基础设施(服务等)进行通信,并且几乎无法在功能上进行更改.我们选择使用带有这样的绑定的WCF

<system.serviceModel>
    <client>
      <endpoint address="net.tcp://localhost:8001/HostCommunicator" binding="netTcpBinding" bindingConfiguration="NETTcpBinding" contract="IHostCommunicationContract"/>
    </client>

    <bindings>
      <netTcpBinding>
        <binding name="NETTcpBinding" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" receiveTimeout="00:10:00" sendTimeout="00:10:00">
          <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/>
          <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
          <security mode="Transport">
            <transport clientCredentialType="Windows" />
          </security>
        </binding>
      </netTcpBinding>
    </bindings>
</system.serviceModel>
  <startup>

沟通.

对于单个请求,这种方法可以正常工作,但VB6应用程序的一种模式是一种批处理模式,它为每个处理的文件发送单独的请求.每秒大约有1-4个请求.

这可以正常工作,直到完成许多请求.在我当前的机器和软件版本上,这是50个请求.如果我启动VB6应用程序,它会再次发出50个请求.在限制之后,应用程序将以99%的CPU使用率挂起.

我们正在使用双工渠道合同.

解决方法

你还记得关闭你的联系吗?看起来你没有关闭连接,只为每个请求打开新的连接?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读