问题标签 [nettcpbinding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1351 浏览

wcf-ria-services - WCF RIA over Net.TCP 绑定?

我正在尝试提高 Silverlight 4 WCF RIA 应用程序的性能。由于它仅供 Intranet 使用,我认为从默认二进制 HTTP 绑定切换到 Net.TCP 绑定可能会稍微提高性能。

但是,我很难让一个简单的概念证明应用程序运行。我有:

  • 将 conecpt 应用的证明从 Cassini 切换到 IIS (7)
  • 在 IIS 上添加了适当的绑定和启用的协议
  • 将 clientaccesspolicy.xml 文件添加到我的 IIS 根目录

现在,当我创建这样的上下文时:

...我收到以下错误:

现在我难住了。据我所知,问题在于自动生成的 WCF RIA 代码创建的客户端需要被告知它要使用 Net.TCP 端点,但我不确定如何做到这一点。

我发现很多博客文章解释了如何通过 Net.TCP 获得 WCF 服务,但我还没有找到一篇关于 WCF RIA 的文章,而且我也找不到任何官方文档。所有这些解释都涉及对似乎不适合 WCF RIA 应用程序的 web.config 文件的更改。

有人可以向我解释如何配置它,或者向我指出一些文档吗?

0 投票
2 回答
2053 浏览

wcf - 您可以将 WCF 数据服务(ne OData、ne Astoria、ne ADO.NET 数据服务)与 NetTcpBinding 一起使用吗?

我正在考虑通过慢速卫星连接创建数据查询 WCF 服务,我真的很喜欢 WCF 数据服务。我看到的问题是 HTTP 是一种非常冗长的格式,由于我所做的一切都是内部和 .NET,是否可以使用 NetTcpBinding 来减少一些开销?

这甚至可能吗?可取的?

0 投票
1 回答
2897 浏览

wcf - 套接字连接被中止 - WCF

我有一个简单的客户端服务器应用程序,当我启动服务器并通过客户端发送消息时,它使用 WCF(netTcpBinding)一切正常,但是当我手动关闭服务器并再次打开它时(不关闭客户端应用程序全部)下次客户端尝试向服务器发送消息时,我收到此异常(在客户端):

套接字连接被中止。这可能是由于处理我们的消息时出错或远程主机超过了接收超时,或者是潜在的网络资源问题引起的。本地套接字超时为“00:00:59.9843903”。

如果我使用 basicHttpBinding 则不会出现问题。

有谁知道为什么会出现这个问题???谢谢,立然

0 投票
2 回答
2798 浏览

wcf - netTcpBinding 怎么会比 wsHttpBinding 慢?

我已经实现了一个场景,它使用 netTcpBinding 和 WsHttpBinding 和传输安全(https)作为 WCF 中的通信绑定类型。然后我比较了性能结果。有趣的是,netTcpBinding 比 wsHttpBinding 慢。我已经阅读了很多关于绑定性能的文档,并且我知道 netTcpBinding 由于二进制编码而提供了最快的通信。

你能解释一下我的测试中可能导致这种情况的原因吗?谢谢。

测试环境:IIS 7

0 投票
1 回答
212 浏览

wcf - TcpConnection 和 WcfProxy

当我处理 wcf 客户端代理时,TcpConnection 是否仍然可用?

(netTcpBinding 已使用)

0 投票
1 回答
8521 浏览

wcf - 如何为 WCF netTcpBinding 配置用户名/密码身份验证?

我希望能够通过 nettcpbinding 使用用户名/密码身份验证,这可能吗?(UserNamePasswordValidator 或类似的东西),没有 Windows 身份验证。

我正在使用代码配置所有内容,因此请在任何示例中仅使用代码而不是 app.config。

0 投票
2 回答
977 浏览

wcf - 同一端口上 WCF 服务的性能

我有 2 个 WCF 服务通过同一个 TCP 端口。

两种服务都是自托管的,一个附加到net.tcp://localhost:8700/DataAccess另一个net.tcp://localhost:8700/Messages

通过将它们连接到不同的端口,我会获得任何性能吗?其中一项服务非常忙于每秒发送数兆字节的数据。有没有理由拥有或不拥有这种配置?

0 投票
1 回答
924 浏览

wcf - 当一个实例重新启动时,Azure WCF 主机会导致通信错误

我对 Azure 中的 WCF 主机有一个相当具体的问题。请耐心等待我描述情况。

我们有一个 WCF 主机托管在使用网络 TCP 绑定的 Azure 辅助角色中。我们有两个运行此工作者角色的实例来提供冗余。由于与我们的问题无关的原因,我们通过每小时更改配置设置来强制重启这些实例。由于升级域,一个实例在第二个实例之前重新启动,这意味着我们始终至少有一个实例在运行。

我们的客户端代码(也在 Azure 上运行,但我认为它在哪里并不重要)看起来与此非常相似(更改了函数名称以夸大其词):

我对此的期望是,每次我们调用这个 Browse 函数时,我们都会创建一个新的代理,一个新的通道和一个新的连接。

我们的问题发生在其中一个实例重新启动时System.ServiceModel.CommunicationObjectFaultedException: The communication object, System.ServiceModel.Channels.ServiceChannel, cannot be used for communication because it is in the Faulted state出现错误。现在,对于每个重新启动的主机,我们只会得到其中一个错误,但这仍然是一个我们不能没有的错误。

我目前的工作假设是,WCF 客户端在引擎盖下的某处保持与不再存在的实例的连接,尽管事实上我读过的所有内容都表明它不应该存在。

除了捕获这个特定错误并重试之外,我还能做些什么来避免这个问题?是否有任何模式可以重试客户端调用?如果我重试,我怎样才能确保这个狡猾的连接真的被取消了?到目前为止,我的重试尝试并不是很成功。

0 投票
1 回答
3022 浏览

asp.net - Web 场和负载平衡环境中的 WCF 服务配置

我想为 web-farm(用于网站)和 NLB 负载平衡(用于服务)使用 WCF Service[NetTcp](均在 c# 中)配置 ASP.NET 网站项目。我想为相同配置以下选项。

NetTcpBinding.maxConcurrentCalls、NetTcpBinding.ListenBacklog 和 NetTcpBinding.MaxConnections

注意:在单机配置过程中,我将 WCF 服务项目中的 NetTcpBinding.ListenBacklog 和 NetTcpBinding.MaxConnections 的值更改为超过 10,这是默认值。我有例外。当我在网站中更改此值时,它工作正常。因此,我必须保持默认配置。不知道为什么会这样。如果有人可以解释这一点,那将很有帮助。

以下参考提供了如何在给定环境中配置的想法,但没有说明如何进行。

参考:http: //msdn.microsoft.com/en-us/library/ee377061%28BTS.10%29.aspx

更新:

让我简化一下。可以说我有以下配置。

  • Web Farm 中的 2 台 IIS 服务器。
  • NLB 中的 3 个 WCF 服务服务器 (NetTcp)
  • 默认配置。对于单个实例。
    • NetTcpBinding.ListenBacklog:10
    • NetTcpBinding.MaxConnections:10
    • NetTcpBinding.maxConcurrentCalls:16

现在我在这个环境中的配置设置是什么。是和上面一样还是如下。

  • 建议配置。对于单个 WebFarm/NLB
    • NetTcpBinding.ListenBacklog:30 (10*3)
    • NetTcpBinding.MaxConnections: 30 (10*3)
    • NetTcpBinding.maxConcurrentCalls:48 (16*3)
0 投票
1 回答
384 浏览

wcf - netTcpBinding 中的 Reliable 属性是什么意思

netTcpBidning 具有可靠的属性,但文档没有说明它的作用。

例如:它是否通过连接发送保持活动状态?如果连接丢失,它会重新连接吗?