草庐IT

wcf-authentication

全部标签

wcf - 为什么 Tcp 比 http 快?

我和我的经理讨论过,他说tcp比http快,因为tcp工作在比http低的层上。然后我想起了OSIModel我在大学学到的,所以我认为他的意思是因为http在应用程序层工作,而tcp在传输层(低于2层)工作,所以速度更快...所以我的问题是:下层比上层工作得更快是因为在两台计算机之间进行数据传输时需要访问的层较少吗?如果是这样,这意味着当我们使用tcp(即使用WCF)时,通信将从传输层开始=>向下到物理层=>另一台计算机的物理层=>向上到传输层?但是我觉得数据还是需要被应用理解,所以还是要上应用层?提前致谢。 最佳答案 TCP之上总

c# - KeepAlive 与 WCF 和 TCP?

我有一个Windows服务托管一个高级WCF服务,该服务通过TCP(netTCP)与protobuf.net通信,有时还与证书通信。receiveTimeout设置为无限,永远不会因不活动而断开连接。但据我所知,无论如何连接都可能被断开,所以我创建了一个简单的双向keepalive服务方法,客户端每9分钟调用一次以保持连接有效。连接永不中断非常重要。这是正确的方法吗?或者我是否可以因为receiveTimout设置为无限而简单地删除我的keeplive?编辑:WCF服务的当前app.config:http://1drv.ms/1uEVKIt 最佳答案

wcf - 更改 WCF net.tcp 绑定(bind)上的套接字选项

我有一个.net4.0WCF应用程序,它使用net.tcp绑定(bind)并实现了一些服务。我想为该绑定(bind)设置一个TCP套接字选项(ReuseAddress选项。relatedquestion解释了我为什么要这样做)。如果我使用原始套接字,我可以使用Socket.SetSocketOption方法。有没有办法以某种方式从net.tcp绑定(bind)中提取底层原始套接字以更改其选项?或者其他一些方式来设置这个选项? 最佳答案 Amir,感谢您提出的添加ReuseAddress选项的建议。但是,我们需要更好地了解您的具体情况

wcf - 保持 wcf 回调 channel 无限期打开/如果出现故障则从客户端重新连接

我目前正在尝试设置这样的东西:服务器端Windowswcf服务挂起并通过tcp监听来自客户端Windows服务的连接。当收到连接(客户端调用服务的CheckIn方法)时,服务通过OperationContext.Current.GetCallbackChannel获取回调channel此channel连同唯一键一起存储在一个集合中(具体来说,我将回调接口(interface)、channel和键存储在List中,其中每一个都是一个属性)现在应该可以根据所述唯一key将调用传递给该客户端服务这起初有效,但过了一会儿就停止了——我无法再将调用传递给客户。我假设这是因为连接已在内部断开,我正

wcf - WCF 服务如何监听与 IIS 相同的端口?

我可以运行一个Windows服务托管的WCF服务监听http://localhost:80/MyService而IIS在http://localhost:80上提供页面并且两者都有效。但是互联网上的很多地方(比如this和this)都说只有一个进程可以同时监听每个端口。他们错了吗? 最佳答案 HTTP.sysmakesthispossible.来自文章:...becauseWCFandIIS6.0bothusethekernel-modeHTTPstack(HTTP.sys),IIS6.0canshareport80withothe

c# - WCF 性能、延迟和可伸缩性

我正在尝试将F#中的简单异步TCP服务器移植到C#4。服务器接收连接,读取单个请求并在关闭连接之前返回一系列响应。C#4中的异步看起来乏味且容易出错,所以我想我会尝试改用WCF。该服务器不太可能在野外看到1,000个并发请求,因此我认为吞吐量和延迟都值得关注。我用C#编写了一个最小的双工WCFWeb服务和控制台客户端。虽然我使用的是WCF而不是原始套接字,但与原始代码的80行相比,这已经是175行代码。但我更关心性能和可扩展性:WCF的延迟是原来的154倍。WCF的吞吐量降低了54倍。TCP可以轻松处理1,000个并发连接,但WCF只能处理20个。首先,我对所有内容都使用默认设置,所以

wcf - 为什么我不能使用 net.tcp 连接到 WCF 服务,但可以使用 http?

我有一个WCF服务在IIS上运行,带有ServiceHostFactory。它在WSHttpBinding上运行良好,但由于速度和一切都在同一个网络上(没有防火墙),我想使用NetTcpBinding来加快速度。当我尝试这样做时,出现了这个错误:Couldnotconnecttonet.tcp://zzz.xxx.yyy/MyService.svc.Theconnectionattemptlastedforatimespanof00:00:01.0464395.TCPerrorcode10061:Noconnectioncouldbemadebecausethetargetmachin

.net - 如何将基于套接字的客户端与 WCF (net.tcp) 服务一起使用?

我开发了一个使用net.tcp适配器并监听特定端口的WCF服务。我想使用普通的.net客户端连接到该服务,该客户端使用套接字将数据发送到端口并监听响应。当我尝试向该服务发送数据时,出现错误:“现有连接被远程主机强行关闭”。但是,我能够通过使用WCF服务的地址/绑定(bind)/契约(Contract)的另一个客户端连接该服务。有没有一种方法可以让我使用基于套接字的普通客户端与WCF服务进行通信? 最佳答案 关键决定是让WCF服务符合socket客户端还是让socket客户端符合WCF服务。尝试符合WCF服务将是最简单的,而不是尝试在

ios - Touch ID Local Authentication 产生 Thread 12 : EXC error

目前,我有以下代码。iflocalAuthenticationContext.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics,error:&authError){localAuthenticationContext.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics,localizedReason:reasonString){success,evaluateErrorinifsuccess{self.performSegue(withIdentifier:"

javax.security.sasl.SaslException : Authentic Failed while connecting to Jboss 7 server from remote client

我有独立的Java客户端(在eclipse中运行),我希望连接到外部服务器。如果服务器是本地主机,那么我看不出有任何问题。但是,每当我尝试连接到外部服务器时,我总是会遇到以下异常-JBREM000200:Remoteconnectionfailed:javax.security.sasl.SaslException:Authenticationfailed:allavailableauthenticationmechanismsfailed-CouldnotregisteraEJBreceiverforconnectiontoremote://10.160.148.61:4447jav