Azure でホストされているwcf
Web ロールがあり、更新などを追加、削除するメソッドがあります。コードをステップ実行しvs2012
て add メソッドを呼び出すと、ProcessGetResponseWebException を受け取ります。
add メソッドは、パラメーターとしてジョブ オブジェクトを受け取ります。これが問題を引き起こしている唯一の方法です。パラメーターとしてジョブ オブジェクトを持たないメソッドは正常に機能します。
このサービスは、カスタム ユーザー名でメッセージ セキュリティを使用します。私はこれを削除しましたが、まだ同じ問題があり、セキュリティが残っている場合は他の方法も機能するため、これは問題ではありません。
奇妙なことに、クライアントをサービスとしてインストールして開始すると、すべて正常に動作し、Visual Studio から実行した場合にのみ発生する問題はありません。Visual Studio 2010 を使用して別のマシンでこれを試しましたが、それでも動作しません。
vs から add メソッドを呼び出してから Azure 仮想マシンにログオンすると、IIS が CPU を 100% 使用していることがわかります。
すべてのメッセージ サイズは最大に設定され、タイムアウトは 10 分に設定されています。念のため、動作している実行中のサービスから構成をコピーしましたが、それでも動作しません。
文字列をパラメーターとして受け取るように add メソッドを変更しましたが、それは機能するため、渡されたジョブ オブジェクトに関連するものですが、サービスとしてインストールされたときに何が機能するのか理解できず、混乱しています。
intellitrace を有効にしましたが、例外は表示されません。
次に試すことができる提案はありますか?
Server stack trace:
at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ClientReliableChannelBinder`1.RequestClientReliableChannelBinder`1.OnRequest(TRequestChannel channel, Message message, TimeSpan timeout, MaskingMode maskingMode)
at System.ServiceModel.Channels.ClientReliableChannelBinder`1.Request(Message message, TimeSpan timeout, MaskingMode maskingMode)
at System.ServiceModel.Channels.ClientReliableChannelBinder`1.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Security.SecuritySessionClientSettings`1.SecurityRequestSessionChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at MobileJobs.CloudService.IJobService.AddJob(Job newJob)
at MobileJobs.CloudService.JobServiceClient.AddJob(Job newJob) in