相关疑难解决方法(0)

使用http keepalive的WCF wsHttpBinding

我有一个使用wsHttpBinding的WCF客户端,我想启用http keep-alive.

我希望我可以通过更改客户端配置来启用它...我已经找到了很多关于如何打开basic-alives以进行basicHttp绑定的描述,但没有运气wsHttpBinding ......这可能吗?

非常感谢.

这是我的客户端绑定:

  <wsHttpBinding>
    <binding name="WSHttpBinding_IRepositoryService" closeTimeout="00:00:10"
      openTimeout="00:00:10" receiveTimeout="00:05:00" sendTimeout="00:05:00"
      bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
      maxBufferPoolSize="524288" maxReceivedMessageSize="655360" messageEncoding="Mtom"
      textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
      <readerQuotas maxDepth="32" maxStringContentLength="81920" maxArrayLength="163840"
        maxBytesPerRead="409600" maxNameTableCharCount="16384" />
      <reliableSession ordered="true" inactivityTimeout="00:10:00"
        enabled="true" />
      <security mode="Message">
        <transport clientCredentialType="Windows" proxyCredentialType="None"
          realm="">
          <extendedProtectionPolicy policyEnforcement="Never" />
        </transport>
        <message clientCredentialType="Windows" negotiateServiceCredential="true"
          algorithmSuite="Default" establishSecurityContext="true" />
      </security>

    </binding>
</wsHttpBinding>
Run Code Online (Sandbox Code Playgroud)

.net configuration wcf keep-alive

12
推荐指数
2
解决办法
1万
查看次数

.NET Framework 是否具有独立于操作系统的全局 DNS 缓存?

介绍

首先,我尝试了 C# DNS 相关 SO 线程和其他互联网文章中的所有建议 - 弄乱ServicePointManager /ServicePoint 设置、通过 HTTP 标头设置自动请求连接关闭、更改连接租用时间 - 没有任何帮助。似乎所有这些设置都是为了修复长时间运行的进程(如 Web 服务)中的 DNS 问题。如果进程拥有自己的 DNS 缓存以最大程度地减少 DNS 查询或操作系统 DNS 缓存读取,这甚至是有意义的。但这不是我的情况。

问题

我们的生产基础设施使用 HA(高可用性)DNS 在维护或功能问题期间交换服务器节点。它的构建方式是,在某些地方我们有多个 CNAME 记录,它们实际上指向同一个 HA A 记录,如下所示:

  • eu.site1.myprodserver.com (CNAME) > eu.ha.myprodserver.com (A)
  • eu.site2.myprodserver.com (CNAME) > eu.ha.myprodserver.com (A)

所有这些记录的 TTL 均为 60 秒。因此,当欧洲节点出现故障或维护时,A记录会切换到其他节点的IP地址。

然后我们有一个监控实用程序,每 5 分钟执行一次并使用 site1 和 site2。为了使其正常工作,两个名称必须指向同一个 DC,因为 DC 之间的数据同步不会那么快。由于两个 CNAME 实际上都链接到同一个具有短 TTL 的 A 记录,乍一看似乎不会出错。但事实证明它可以。

该实用程序是用适用于 .NET Framework 4.7.2 的 C# 编写的,并使用HttpClient 类向两个站点执行请求。是的 他 …

dns high-availability

8
推荐指数
1
解决办法
1120
查看次数

标签 统计

.net ×1

configuration ×1

dns ×1

high-availability ×1

keep-alive ×1

wcf ×1