जैसा कि मैंने पिछली पोस्ट में कहा था, हमारे रेल ऐप को किसी तृतीय-पक्ष एप्लिकेशन में ई-ए-वी प्रकार की तालिका के साथ इंटरफ़ेस करना है जिसे हम डेटा खींच रहे हैं। मैंने डेटा को सामान्य बनाने के लिए एक दृश्य बनाया था लेकिन यह चलाने के लिए बहुत लंबा रास्ता ले रहा है। हमारे पास हमारे ऑफशोर PHP डेवलपर्स में से एक था, इसे गति देने में सहायता के लिए एक संग्रहीत प्रक्रिया तैयार करें।रेल में संग्रहीत प्रक्रियाओं का उपयोग
अब हम इस मुद्दे में भाग लेते हैं कि हमें इस संग्रहित प्रक्रिया को रेल ऐप से कॉल करने की आवश्यकता है, साथ ही साथ खोज और फ़िल्टरिंग भी प्रदान की जाती है। दृश्य ऐसा कर सकता था क्योंकि रेल इसे पारंपरिक रेल मॉडल के रूप में पेश कर रहे थे। मैं संग्रहीत प्रो के साथ ऐसा कैसे कर सकता हूं? क्या हमें कस्टम खोज और ऑर्डरिंग लिखनी होगी (हम सर्चलॉग का उपयोग कर रहे थे)? प्रबंधन रेल से संग्रहित प्रो का उपयोग करने की कमी को समझने में असमर्थ है; वे सभी कहते हैं कि वर्तमान विधि को डेटा लोड करने में बहुत लंबा समय लग रहा है और इसे ठीक करने की आवश्यकता है, लेकिन खोज और फ़िल्टरिंग महत्वपूर्ण कार्य हैं।
EDIT मैंने इस प्रश्न के लिए कोड यहां पोस्ट किया: Optimizing a strange MySQL Query। मजाकिया बात यह है कि जब मैं एक GUI (Navicat) में यह क्वेरी चलाता हूं तो यह लगभग 5 सेकंड में चलता है, लेकिन वेब पेज पर इसे चलाने में एक मिनट लगते हैं; दृश्य मूल पोस्ट में उल्लिखित कारणों के लिए जटिल है, लेकिन मुझे लगता है कि MySQL प्रदर्शन को बेहतर बनाने के लिए SQL सर्वर (या बल्कि, मैं SQL सर्वर कैसे पढ़ता हूं) जैसे दृश्यों को अनुकूलित और कैश करता हूं।
रेल के साथ संग्रहीत प्रक्रिया का उपयोग बुरा लगता है ... क्या आप लोडिंग समय को बेहतर बनाने के लिए कोई और तरीका नहीं ढूंढ सकते? – marcgg
marcgg के साथ सहमत हैं ... क्या आप जानकारी प्रदान कर सकते हैं ताकि हम प्रदर्शन में सुधार के अन्य तरीकों के बारे में सोच सकें? – Ben
मैं मानता हूं कि यह विशेष स्थिति बुरा लगता है, हालांकि यह एक अच्छा सवाल है, उसमें, आपके पास हमेशा डेटाबेस का नियंत्रण नहीं होता है। – jamesaharvey