के समान कैशिंग क्षमता है, हम एक भारी अनुरोधित API बना रहे हैं और अब ग्राफक्लुएल, आरईएसटी या आरईएसटी और ग्राफक्यूएल के संयोजन का उपयोग करने पर विचार कर रहे हैं। हमें ग्राफ़क्यूएल के दृष्टिकोण पसंद हैं कि फ्रंटेंड तय कर सकता है कि कौन सा डेटा लौटाया गया है और इसके लाभ देखें। लेकिन दूसरी तरफ हम डेटा के प्रकार (उत्पाद और उत्पाद विन्यास) के प्रकार के कारण कैशिंग के बारे में चिंतित हैं।क्या ग्राफ़क्यूएल में रीस्ट
केवल का उपयोग कर GraphQL: हमें तेजी लाने के लिए हमारे दृश्यपटल developmentand हमारे एपीआई भविष्य कार्यान्वयन के लिए अधिक लचीलापन प्रदान करता अनुमति देता है क्षण के लिए हम निम्न विकल्प देखें। लेकिन उत्पादों की उच्च मात्रा के माध्यम से हम मूल http कैशिंग क्षमता और हमारे सीडीएन का उपयोग करना चाहते हैं।
केवल REST का उपयोग करके: हमें प्रत्येक अनुरोध पर मानक http कैश का उपयोग करने की अनुमति देता है लेकिन प्रत्येक फ्रंटेंड अनुरोध के लिए एक निर्धारित अंतराल की आवश्यकता होती है।
तो मूल रूप से मैं जानना चाहता हूं कि ग्राफक्यूएल की कैशिंग क्षमता आरईएसटी के समान है या नहीं?
प्लस के रूप में हमने इसे संयोजन के बारे में सोचा।
- दोनों का मेल: इस का कारण यह है कि हम एक बैकएंड कैश जो हमारे बैकएंड-प्रणाली से डेटा कैश किया है विचार उदाहरण के लिए है करने के लिए REST एंडपॉइंट
product/1
के पीछे एक उत्पाद JSON है में काम करेगा जो उत्पाद डेटा और सभी विन्यास। फिर यह हमारे बैकएंड कैश में सहेजा जाता है। ग्राफ़क्यूएल का उपयोग फ़ॉन्टेंड डेवलपर्स द्वारा कॉन्फ़िगरेशन भागों को विशिष्ट दृश्य आवश्यकताओं को हल करने के लिए किया जा सकता है (उदा .: उत्पाद/1? क्वेरी = कुछग्राफक्लुक्वायर ')। तो आरईएसटी-एंडपॉइंट सर्वर-कैशिंग और क्लाइंट-कैशिंग के लिए ग्राफ़क्यूएल के लिए है।
क्या यह दृष्टिकोण 'ग्राफक्लुएल' दुनिया में समझ में आता है या यह सिर्फ एक बेकार अमूर्त परत है और इसमें कोई सुधार नहीं आता है?
REST निश्चित रूप से _can_ का किनारा है यदि आप HTTP इंटरमीडिएट्स जैसे सीडीएन या अन्य प्रॉक्सी द्वारा स्वचालित कैशिंग पर भरोसा करना चाहते हैं। ग्राफ़क्यूएल के साथ उस काम को करने के लिए इंटरमीडिएट को ग्राफ़क्यूएल को समझने की आवश्यकता होगी और मुझे ऐसा कोई भी पता नहीं है जो करता है। – Evert