मैं एक WCF वेब सेवा स्थानीय रूप से बोल रहा हूँ (या दूरस्थ) है कि छोटे (डेटा ईए की < 1K के बारे में 25 लाइनों) डेटा की मात्रा के साथ ठीक काम कर रहा से प्राप्त करें। लेकिन जब डेटा बड़ा हो जाता है (लगभग 300 लाइनें) वेब सेवा विफल हो जाती है। नीचे अपवाद से अपवाद, आंतरिक अपवाद, और स्टैक ट्रेस है।WCF वेब सेवा विफल पर बड़ा डेटा
सेवा भी असामान्य रूप से स्थानीय स्तर पर निष्पादित करने के लिए लंबे समय से लग रहा है (मैं इस ऐड क्योंकि यह आपको सुलझाने में कुछ संकेत दे सकते हैं)। बड़ी मात्रा में डेटा प्राप्त करना 3 एस सर्वर-साइड लेता है और डेटा के बारे में छोटा 1s सर्वर-साइड लेता है। हालांकि, डेटा की थोड़ी सी मात्रा प्राप्त करने के लिए वेब सेवा (स्थानीय रूप से) चलाना 24s लेता है।
मेरे पास भी में मेरे क्लाइंट परीक्षण एप्लिकेशन से app.config से बाध्यकारी जानकारी शामिल है।
========= बाध्यकारी जानकारी ===========
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IFormsService" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="02:00:00" sendTimeout="00:02:00"
allowCookies="false" bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
maxBufferSize="2147483647" maxBufferPoolSize="2147483647"
maxReceivedMessageSize="2147483647"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="1000000000"
maxArrayLength="1000000000"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None"
proxyCredentialType="None" realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint
address="http://monica-pc/TrialIQSvc/FormsService.svc/FormsService/FormsService.Svc"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IFormsService"
contract="WebService.IFormsService" name="BasicHttpBinding_IFormsService" />
</client>
========= अपवाद आंकड़े =============
**Exception**: An error occurred while receiving the HTTP response to http://monica-pc/TrialIQSvc/FormsService.svc/FormsService/FormsService.Svc. This could be due to the service endpoint binding not using the HTTP protocol. This could also be due to an HTTP request context being aborted by the server (possibly due to the service shutting down). See server logs for more details.
**Inner Exception**: The underlying connection was closed: An unexpected error occurred on a receive.
**Stack trace**:
Server stack trace:
at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.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 Test.WebService.IFormsService.GetFormGroupInstance(String formGroupId, String subjectId, String userId)
at Test.WebService.FormsServiceClient.GetFormGroupInstance(String formGroupId, String subjectId, String userId) in G:\SVNTrialIQ\trunk\Common\trunk\source\Forms\Test\Service References\WebService\Reference.cs:line 59
at Test.Form1.btnInstanceInfo_Click(Object sender, EventArgs e) in G:\SVNTrialIQ\trunk\Common\trunk\source\Forms\Test\Form1.cs:line 408
यूप! उसने ऐसा किया मैं अपने देव मशीन (Vista) पर प्रकट होने के लिए एक ट्रेस लॉग नहीं मिला। लेकिन, जब मैं विस्टा के साथ प्रदान किए गए आईआईएस 7 इंटरफ़ेस को देखता हूं, तो मुझे यह मानना है कि यह मुझे महसूस करता है जैसे मैंने अपने जीवन में पहले कभी कंप्यूटर को छुआ नहीं। इसलिए मैंने बहुत अधिक समस्या निवारण नहीं किया। –
हालांकि, मेरे Win2003 सर्वर पर web.config में ट्रेस कोड चलाने से पता चला कि यह विरासत के कारण एक प्रकार त्रुटि थी, जो कि असंबंधित है, लेकिन यहां अच्छी तरह से वर्णन किया गया है: http://developers.de/blogs/damir_dobric/archive/200 9/03/24/about-quot-knowntypeattribute-quot-example.aspx –