SQL सर्वर 2008R2 डेटाबेस & .NET 3.5 अनुप्रयोग के लिए गति को बेहतर बनाने के लिए सबसे सामान्य और आसान कार्यान्वयन समाधान क्या है।क्या कैशिंग के साथ SQL सर्वर के प्रदर्शन में सुधार करना संभव है?
हमारे पास निम्न विशेषताओं के साथ एक आवेदन है:
- एक साथ ग्राहकों की छोटी संख्या (~ 200 पर सबसे अधिक)।
- एसक्यूएल सर्वर साइड पर जटिल गणित संचालन
- हम दैवज्ञ की row-level security (इस प्रकार TVF और storedprocs के बजाय सीधे क्वेरी करने तालिकाओं का उपयोग) -इस मुख्य समस्या है कि उपयोगकर्ताओं को की उच्च मात्रा प्रदर्शन के लिए कुछ की नकल कर रहे हैं अद्यतन/आवेषण/हटाता है/गणना, और वे बाहर निकलते हैं क्योंकि उन कार्यों को पूरा करते समय उन्हें पृष्ठों को फिर से लोड करने की प्रतीक्षा करनी पड़ती है।
- तेजी से क्या है: एसक्यूएल सर्वर से पूरे डाटासेट लौटने और सी # तरफ गणित कार्यों का निष्पादन, या एसक्यूएल पक्ष पर गणना कार्यों का निष्पादन (इस प्रकार, वापस नहीं सवाल मैं पर स्पष्टीकरण की जरूरत है
इस प्रकार हैं अतिरिक्त कॉलम)। या यह केवल हार्डवेयर निर्भर है?
- कैशिंग प्रदर्शन में सुधार करेगा (उदाहरण के लिए यदि हम रेडिस कैश जोड़ते हैं)। या कैशिंग समाधान केवल बड़ी संख्या में ग्राहकों के लिए व्यवहार्य है?
- क्या कुछ डेटा पूर्व-गणना करने और डेटाबेस में कहीं स्टोर करने के लिए यह एक बुरा अभ्यास है (इसलिए, जब उपयोगकर्ता अनुरोध करेगा, तो इसकी गणना पहले से ही की जाएगी)। या यह कैशिंग को क्या करना है? यदि यह एक बुरा अभ्यास नहीं है, तो संसाधन उपलब्ध होने पर गणना करने के लिए आप SQL सर्वर को कॉन्फ़िगर कैसे करते हैं?
- कैशिंग कैसे प्रदर्शन में सुधार कर सकती है अगर इसे अभी भी डेटाबेस पर जाना है और देखें कि कोई रिकॉर्ड अपडेट किया गया है या नहीं?
सामान्य सुझाव और टिप्पणियां भी स्वागत है।
निश्चित रूप से एसक्यूएल प्रोफाइलर के बारे में सहमत हैं –