我有一组 WCF 服务,我想将其迁移到 Azure Service Fabric。我正在为每个 WCF 服务创建一个服务结构无状态服务,并从我的结构服务中引用 WCF 服务库和合同。我的目标是对现有 WCF 服务库和合同进行零代码更改。结构服务就像包装器一样。
我对简单服务很成功,我将 WCF 服务配置放入结构服务(.NET 框架)的 app.config 文件中system.configuration.configurationmanager
,现有 wcf 代码中的调用似乎工作正常。
但是,我尝试迁移的许多更复杂的服务都包含使用ChannelFactory
. 我想知道这会奏效吗?Azure Service Fabric 是否允许其服务通过 进行外部通信调用ChannelFactory
?
如何读取服务结构中的 WCF 跟踪日志?有没有本地驱动器来存储日志文件?
当客户端在结构中调用 wcf 服务时,我也遇到了通用连接关闭错误。
[编辑] 负载均衡器已配置,但客户端仍然无法通过:
Could not connect to net.tcp://10.0.0.6:9012/. The connection attempt lasted for a time span of 00:00:21.0433425. TCP error code 10060: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 10.0.0.6:9012.
Server stack trace:
at System.ServiceModel.Channels.SocketConnectionInitiator.Connect(Uri uri, TimeSpan timeout)
at System.ServiceModel.Channels.BufferedConnectionInitiator.Connect(Uri uri, TimeSpan timeout)
at System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection(TimeSpan timeout)
at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.CallOpenOnce.System.ServiceModel.Channels.ServiceChannel.ICallOnce.Call(ServiceChannel channel, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan timeout, CallOnceManager cascade)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Inner Exception:
A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 10.0.0.6:9012
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.Sockets.Socket.Connect(EndPoint remoteEP)
at System.ServiceModel.Channels.SocketConnectionInitiator.Connect(Uri uri, TimeSpan timeout)
Azure Service Fabric 是否允许其服务通过 ChannelFactory 进行外部通信调用?
如何读取服务结构中的 WCF 跟踪日志?有没有本地驱动器来存储日志文件?
当客户端在结构中调用 wcf 服务时,我也遇到了通用连接关闭错误。
您是否配置了 Azure负载均衡器以将流量转发到群集?
您是否考虑将WCF服务作为Windows 容器运行?这样您可能根本不需要创建 SF 服务。
请注意,WCF 的未来似乎并不光明。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句