हमारे पास एक डीएलएल है जो हमारी वेबसाइट फ्रंट एंड और बैक एंड टिकटिंग सिस्टम के बीच मध्य परत के रूप में उपयोग किया जाता है। टिकट प्रणाली में सम्मिलन की विधि व्याख्या करने के लिए थोड़ा जटिल है, लेकिन लघु संस्करण यह है कि यह धीमा है। मुझे प्राप्त होने वाला सबसे अच्छा केस परिदृश्य 9 सेकंड का सबमिशन समय है।
वास्तविक समस्या हालांकि, यह है कि मैं केवल उस समय विंडोज ऐप के माध्यम से प्राप्त कर सकता हूं, एएसपी.NET वेबसाइट के माध्यम से नहीं। मैंने परीक्षण के लिए एक विंडोज टेस्ट एप्लिकेशन और एक वेब पेज स्थापित किया है, और भले ही उनके बीच कोड कॉपी किया गया हो, फिर भी वेब पेज 17-20 सेकंड में लगातार सबमिट हो रहा है, जबकि विंडोज ऐप 8-11 सेकंड हो रहा है।
इसका कारण क्या हो सकता है?
संपादित करें: कुछ उत्तरों के जवाब में ...
वेब सेवा के लिए कॉल समय का बड़ा हिस्सा ले रहा है, लेकिन इस वेब सेवा पर मेरा कोई नियंत्रण नहीं है क्योंकि यह टिकट सिस्टम विक्रेता द्वारा प्रदान किया गया है। मुझे यह पता लगाने की ज़रूरत है कि वेब सेवा अलग-अलग समय क्यों ले रही है जब इसे एक अलग तरह का आवेदन कहा जाता है। कोड दोनों मामलों में बिल्कुल वही है, और यह एक लूप चला रहा है फिर रिकॉर्ड किए गए समय की रिपोर्टिंग।
कोड है:
for (int i = 0; i < numIterations; i++)
{
startTimes[i] = DateTime.Now;
try
{
cvNum = Clearview.Submit(req, DateTime.Now, DateTime.Now, false);
}
catch (Exception ex)
{
exceptionCount++;
lblResult.Text += @"
Exception Caught: " + ex.Message + @"
";
}
endTimes[i] = DateTime.Now;
}
यह दोनों मामलों में एक ही लूप है, और मैं पुस्तकालय में कॉल के पहले और बाद में सही समय पर अंक लगा रहा हूं, जो आगे संसाधित करता है और फिर वेब सेवा को कॉल करता है। लेकिन वह प्रसंस्करण सुसंगत होना चाहिए, है ना? मैंने डीबगिंग के दौरान पता लगाया है और वास्तविक वेब सेवा कॉल में कोई देरी नहीं देखी है ...
फिर से संपादित करें: चींटियों के साथ काम करना, दोनों मामलों में 99.4% समय केवल वेब सेवा कॉल पर भेजा जा रहा है। वहां कोई अंतर नहीं दिखता है ... सिवाय इसके कि जब वेब पेज का समय विंडोज ऐप से अधिक समय ले रहा है।