आप जैसे पाठक MUO का समर्थन करने में मदद करते हैं। जब आप हमारी साइट पर लिंक का उपयोग करके खरीदारी करते हैं, तो हम संबद्ध कमीशन अर्जित कर सकते हैं। और पढ़ें।

एपीआई स्पष्ट प्रोटोकॉल और आर्किटेक्चर के माध्यम से अनुप्रयोगों को जोड़ते हैं। एक एपीआई आर्किटेक्चर सॉफ्टवेयर इंटरफेस बनाने के लिए नियमों का एक ढांचा है। नियम निर्धारित करते हैं कि उपयोगकर्ताओं को सर्वर कार्यक्षमता कैसे प्रदान की जाए। आर्किटेक्चर का प्रकार एपीआई को नियंत्रित करने वाले नियमों और संरचनाओं को निर्धारित करता है।

REST से RPC तक कई अलग-अलग प्रकार के API आर्किटेक्चर हैं। उनकी संरचना और संरचना के बारे में जानने से आपको अपने आवेदन के लिए एक का चयन करने में मदद मिलेगी।

1. आराम

बाकी एपीआई आधुनिक हैं और डेवलपर्स द्वारा उपयोग किए जाने वाले सबसे लोकप्रिय एपीआई आर्किटेक्चर हैं। आराम (प्रतिनिधित्वात्मक राज्य हस्तांतरण) एक वास्तुकला है जिसका उपयोग क्लाइंट-सर्वर अनुप्रयोगों को डिजाइन करने के लिए किया जाता है। यह एक प्रोटोकॉल या मानक नहीं है, इसलिए आप इसे विभिन्न तरीकों से लागू कर सकते हैं। यह पहलू एक डेवलपर के रूप में आपके लचीलेपन को बढ़ाता है।

instagram viewer

REST डेटाबेस में संग्रहीत अनुरोधित डेटा तक पहुँच की अनुमति देता है। आप REST API के साथ कोर CRUD कार्य कर सकते हैं। जब ग्राहक RESTful API के माध्यम से सामग्री का अनुरोध करते हैं, तो उन्हें सही हेडर और पैरामीटर का उपयोग करना चाहिए। हेडर में संसाधन की पहचान करने के लिए उपयोगी मेटाडेटा होता है, जैसे स्थिति कोड और प्राधिकरण।

HTTP के माध्यम से स्थानांतरित की गई जानकारी JSON, HTML, XML या सादे पाठ में हो सकती है। JSON REST API के लिए सबसे अधिक उपयोग किया जाने वाला फ़ाइल स्वरूप है। JSON भाषा-अज्ञेयवादी है और मनुष्यों द्वारा पठनीय है।

2. साबुन

सरल ऑब्जेक्ट एक्सेस प्रोटोकॉल (SOAP) एक आधिकारिक एपीआई प्रोटोकॉल है। वर्ल्ड वाइड वेब कंसोर्टियम (W3C) SOAP प्रोटोकॉल का रखरखाव करता है, जो कि शुरुआती एपीआई आर्किटेक्चर में से एक है। इसका डिज़ाइन विभिन्न भाषाओं और प्लेटफार्मों के साथ निर्मित अनुप्रयोगों के बीच संचार को आसान बनाता है।

SOAP प्रारूप वेब सेवा विवरण भाषा (WSDL) का उपयोग करके एक API का वर्णन करता है। यह व्यापक मार्कअप भाषा (XML) में लिखा गया है। प्रारूप अंतर्निहित अनुपालन मानकों को लागू करता है जो सुरक्षा, स्थिरता, अलगाव और स्थायित्व को बढ़ावा देता है। ये गुण उद्यम विकास के लिए SOAP को बेहतर बनाने वाले विश्वसनीय डेटाबेस लेनदेन को सुनिश्चित करते हैं।

जब कोई उपयोगकर्ता SOAP API के माध्यम से सामग्री का अनुरोध करता है, तो वह मानक परत प्रोटोकॉल के माध्यम से जाता है। प्रतिक्रिया XML प्रारूप में है, जिसे मनुष्य और मशीन पढ़ सकते हैं। REST API की तरह, SOAP API जानकारी को कैश/स्टोर नहीं करते हैं। यदि आपको बाद में डेटा की आवश्यकता है, तो आपको एक और अनुरोध करना होगा।

SOAP स्टेटफुल और स्टेटलेस डेटा एक्सचेंज दोनों का समर्थन करता है।

3. ग्राफक्यूएल

ग्राफक्यूएल एक क्वेरी भाषा है एक एपीआई के लिए। यह एक सर्वर-साइड रनटाइम है जो डेटा के परिभाषित सेट के आधार पर प्रश्नों को निष्पादित करता है। ग्राफकॉल के विशिष्ट उपयोग के मामले हैं। इसकी वास्तुकला आपको आवश्यक विशिष्ट जानकारी घोषित करने की अनुमति देती है।

REST आर्किटेक्चर के विपरीत, जहाँ HTTP क्लाइंट अनुरोधों और प्रतिक्रियाओं को संभालता है, ग्राफ़िकल प्रश्नों के साथ डेटा का अनुरोध करता है। एक ग्राफक्यूएल सेवा उन प्रकारों के प्रकारों और क्षेत्रों को परिभाषित करती है, फिर प्रत्येक क्षेत्र और प्रकार के लिए कार्य प्रदान करती है।

सेवा प्राप्त होती है ग्राफक्यूएल प्रश्न मान्य करने और निष्पादित करने के लिए। सबसे पहले, यह सुनिश्चित करने के लिए एक क्वेरी की जाँच करता है कि यह परिभाषित प्रकारों और परिभाषित क्षेत्रों को संदर्भित करता है। फिर, यह वांछित परिणाम उत्पन्न करने के लिए संबंधित कार्यों को चलाता है।

कई स्रोतों से डेटा लाने जैसे कुछ उपयोग के मामलों के लिए ग्राफक्लाइन बहुत अच्छा है। आप डेटा लाने को नियंत्रित भी कर सकते हैं और छोटे उपकरणों के लिए बैंडविड्थ को नियंत्रित कर सकते हैं।

4. अपाचे काफ्का

अपाचे काफ्का एक वितरित मंच है जो इवेंट स्ट्रीमिंग का समर्थन करता है। इवेंट स्ट्रीमिंग स्रोतों से वास्तविक समय में डेटा कैप्चर करने की प्रक्रिया है। स्रोत डेटाबेस, सर्वर या सॉफ़्टवेयर अनुप्रयोग हो सकते हैं। काफ्का प्रणाली में सर्वर और क्लाइंट होते हैं। संचार एक टीसीपी नेटवर्क प्रोटोकॉल के माध्यम से होता है।

आप सिस्टम को हार्डवेयर, वर्चुअल मशीन और कंटेनर पर तैनात कर सकते हैं। आप इसे ऑन-प्रिमाइसेस और क्लाउड वातावरण में कर सकते हैं। अपाचे काफ्का सिस्टम वास्तविक समय में डेटा, प्रक्रियाओं को कैप्चर करता है और उस पर प्रतिक्रिया करता है। यह वास्तविक समय में डेटा को पसंदीदा गंतव्य तक भी पहुंचा सकता है। काफ्का सिस्टम में डेटा को कैप्चर और स्टोर करता है जिसे आप बाद में उपयोग के लिए पुनः प्राप्त कर सकते हैं।

काफ्का डेटा के निरंतर प्रवाह और एकीकरण का समर्थन करता है। यह सुनिश्चित करता है कि जानकारी सही जगह पर, सही समय पर है। इवेंट स्ट्रीमिंग ऐसे कई उपयोग मामलों पर लागू हो सकती है जिनके लिए लाइव डेटा स्ट्रीम की आवश्यकता होती है। इनमें वित्तीय संस्थान, स्वास्थ्य देखभाल, सरकार, परिवहन उद्योग और कंप्यूटर सॉफ्टवेयर कंपनियां शामिल हैं।

5. AsyncAPI

AsyncAPI एक ओपन-सोर्स पहल है जो इवेंट-संचालित आर्किटेक्चर बनाने और बनाए रखने में मदद करती है। इसकी विशिष्टताओं में OpenAPI विशिष्टताओं के साथ बहुत सी बातें समान हैं। AsyncAPI अनिवार्य रूप से कुछ अंतरों के साथ, OpenAPI विनिर्देशों का एक अनुकूलन और सुधार है।

AsyncAPI आर्किटेक्चर REST API और इवेंट-संचालित API के मिश्रण को एक साथ लाता है। अनुरोधों और प्रतिक्रियाओं को संभालने के लिए इसके स्कीमा हैं इवेंट एपीआई के समान। AsyncAPI एक मशीन-पठनीय में अतुल्यकालिक अनुप्रयोगों का वर्णन और दस्तावेज करने के लिए विनिर्देश प्रदान करता है प्रारूप। यह उपयोगकर्ताओं के लिए उन्हें लागू करना आसान बनाने के लिए कोड जनरेटर जैसे उपकरण भी प्रदान करता है।

AsyncAPI इवेंट-संचालित आर्किटेक्चर (EDA) की वर्तमान स्थिति में सुधार करता है। लक्ष्य EDA के साथ काम करना आसान बनाना है क्योंकि यह REST API के साथ है। AsyncAPI पहल प्रलेखन और कोड प्रदान करती है, जो इवेंट मैनेजमेंट का समर्थन करती है। REST API में उपयोग की जाने वाली अधिकांश प्रक्रियाएँ ईवेंट-संचालित/एसिंक्रोनस API पर लागू होती हैं।

इवेंट-संचालित सिस्टम को दस्तावेज़ करने के लिए AsyncAPI विनिर्देश का उपयोग करना महत्वपूर्ण है। यह इवेंट-संचालित परियोजनाओं पर काम करने वाली टीमों में निरंतरता और दक्षता को नियंत्रित और बनाए रखता है।

6. दूरस्थ प्रक्रिया कॉल (RPC)

आरपीसी एक सॉफ्टवेयर संचार प्रोटोकॉल है जो एक नेटवर्क पर विभिन्न कार्यक्रमों के बीच संचार की अनुमति देता है। उदाहरण के लिए, एक प्रोग्राम नेटवर्क पर दूसरे कंप्यूटर से सूचना का अनुरोध कर सकता है। इसे नेटवर्क प्रोटोकॉल का पालन करने की आवश्यकता नहीं है। आप स्थानीय सिस्टम की तरह ही दूरस्थ सिस्टम पर प्रक्रियाओं को कॉल करने के लिए RPC का उपयोग कर सकते हैं।

RPC क्लाइंट-सर्वर मॉडल पर काम करती है। क्लाइंट प्रोग्राम अनुरोध करता है और सर्वर प्रोग्राम एक सेवा के साथ प्रतिक्रिया करता है। RPCs तुल्यकालन पर काम करते हैं। जब कोई प्रोग्राम रिक्वेस्ट भेजता है, तो वह तब तक सस्पेंड रहता है, जब तक उसे सर्वर से रिस्पांस नहीं मिल जाता।

वितरित प्रणालियों के लिए RPC सर्वोत्तम हैं। वे कमांड-आधारित सिस्टम के लिए सर्वश्रेष्ठ हैं और उनके पास हल्के पेलोड हैं जो प्रदर्शन को बढ़ाते हैं।

सही एपीआई आर्किटेक्चर कैसे चुनें

सही एपीआई आर्किटेक्चर आपके उपयोग के मामले पर निर्भर करता है। आर्किटेक्चर एपीआई को विकसित करने की कार्यप्रणाली निर्धारित करता है और यह कैसे चलेगा। एपीआई का वास्तुशिल्प डिजाइन इसके घटकों और इंटरैक्शन को परिभाषित करता है।

एपीआई को डिजाइन और विकसित करने से पहले वास्तु संबंधी निर्णय लें। एपीआई, स्तर, जीवनचक्र प्रबंधन और सुरक्षा की तकनीकी आवश्यकताओं का निर्धारण करें। एपीआई आर्किटेक्चर डिजाइन में संरचनात्मक परतें होती हैं। परतें विकास का मार्गदर्शन करती हैं और सुनिश्चित करती हैं कि बनाया गया एपीआई अपने इच्छित उद्देश्य को पूरा करता है।