Upstash नेटिव Redis API के अलावा REST API का समर्थन करता है। REST API डेवलपर्स को सर्वरलेस और एज फ़ंक्शंस से कनेक्शन समस्याओं के बिना अपने Redis तक पहुंचने में मदद करता है। लेकिन यदि आप एक ही फ़ंक्शन में कई Redis कमांड निष्पादित करते हैं तो इसका मतलब है कि आप डेटाबेस को कई बार कॉल करेंगे। हमारे समुदाय के एक सदस्य (@MasterGates) ने हमारे डिस्कॉर्ड चैनल में एक शानदार सुझाव दिया: पाइपलाइन API।

पाइपलाइन API
पाइपलाइन API, Redis PIPELINE कमांड का REST API के लिए अनुकूलन है। आप एक ही HTTP अनुरोध में कई कमांड भेजते हैं, प्रतिक्रियाएं एक ही अनुरोध में वापस आती हैं। यह RTT (राउंड ट्रिप टाइम) को कम करके और सॉकेट I/O को घटाकर आपके एप्लिकेशन के प्रदर्शन में सुधार करता है।
अनुरोध सिंटैक्स:
curl -X POST https://us1-merry-cat-32748.upstash.io/pipeline \
-H "Authorization: Bearer 2553feg6a2d9842h2a0gcdb5f8efe9934" \
-d '[ ["SET", "key1", "valuex"], ["SETEX", "key2", 13, "valuez"], ["INCR", "key1"], ["ZADD", "myset", 11, "item1", 22, "item2"] ]'
प्रतिक्रिया सिंटैक्स:
[
{ "result": "OK" },
{ "result": "OK" },
{ "error": "ERR value is not an integer or out of range" },
{ "result": 2 }
]
ऑर्डरिंग गारंटी और एटॉमिसिटी
Upstash गारंटी देता है कि पाइपलाइन में कमांड उसी क्रम में निष्पादित होते हैं। लेकिन एटॉमिसिटी की गारंटी नहीं है। अन्य क्लाइंट्स द्वारा भेजे गए कमांड पाइपलाइन के साथ इंटरलीव हो सकते हैं। कुछ कमांड विफल हो सकते हैं जबकि शेष सफलतापूर्वक निष्पादित होते हैं।
पाइपलाइन API की एक और सीमा यह है कि आपके कमांड स्वतंत्र होने चाहिए, इसलिए एक कमांड की प्रतिक्रिया की आवश्यकता पाइपलाइन में दूसरे कमांड को नहीं होनी चाहिए।
Upstash REST API के बारे में अधिक जानने के लिए हमारा दस्तावेज़ीकरण देखें। हम अपने उपयोगकर्ताओं द्वारा निर्देशित API विकसित करना जारी रखते हैं इसलिए कृपया ट्विटर या डिस्कॉर्ड पर अपनी प्रतिक्रिया साझा करें।