एंबेडेड HTTP सर्वर

एम्बेडेड HTTP सर्वर एक HTTP सर्वर है जिसका उपयोग अंतः स्थापित प्रणाली  में किया जाता है।

HTTP सर्वर को आमतौर पर अनुप्रयोग प्रक्रिया सामग्री (एम्बेडेड) सिस्टम के एक सॉफ़्टवेयर घटक के रूप में कार्यान्वित किया जाता है जो यांत्रिक और/या विद्युत भागों वाली मशीन को नियंत्रित और/या मॉनिटर करता है। वेब ब्राउज़र का उपयोग करके एक या अधिक स्थानीय या दूरस्थ उपयोगकर्ता (कंप्यूटिंग) के साथ संचार की अनुमति देने के लिए HTTP सर्वर हाइपरटेक्स्ट परहस्त शिष्टाचार  संचार प्रोटोकॉल लागू करता है। इसका उद्देश्य उपयोगकर्ताओं को स्थानीय उपयोगकर्ता इंटरफेस ( प्रदर्शन उपकरण, कंप्यूटर) के लिए आवश्यक पारंपरिक बाह्य उपकरणों का उपयोग किए बिना,  संगणक संजाल  के माध्यम से एम्बेडेड सिस्टम (वेब यूजर इंटरफ़ेस, डेटा मॉनिटरिंग, डेटा लॉकर, डेटा कॉन्फ़िगरेशन इत्यादि) द्वारा प्रदान की गई जानकारी के साथ बातचीत करने की अनुमति देना है। कीबोर्ड, आदि)। कुछ मामलों में HTTP सर्वर के माध्यम से प्रदान की गई कार्यक्षमताएं प्रोग्राम-टू-प्रोग्राम संचार की भी अनुमति देती हैं, उदाहरण के लिए मॉनिटर की गई मशीन आदि के बारे में लॉग किए गए डेटा को पुनः प्राप्त करने के लिए।

उपयोग
एम्बेडेड एप्लिकेशन के भीतर उपयोग के उदाहरण हो सकते हैं (उदाहरण):
 * पारंपरिक एप्लिकेशन के लिए एक पतला क्लाइंट इंटरफ़ेस प्रदान करना;
 * विकास चरण के दौरान डेटाबेस अनुक्रमण, प्रतिवेदन िंग और डिबगिंग उपकरण प्रदान करना;
 * नियमित इंटरफ़ेस में प्रदर्शित होने वाली जानकारी के वितरण और अधिग्रहण के लिए एक प्रोटोकॉल लागू करना - संभवतः एक वेब सेवा, और संभवतः क्रमबद्धता के रूप में XML का उपयोग करना;
 * एक वेब अनुप्रयोग विकसित करना।

लाभ
उपरोक्त कार्य करने के लिए HTTP का उपयोग करने के कुछ फायदे हैं:
 * HTTP एक अच्छी तरह से अध्ययन किया गया क्रॉस-प्लेटफ़ॉर्म प्रोटोकॉल है और इसमें परिपक्व कार्यान्वयन निःशुल्क उपलब्ध हैं;
 * HTTP को शायद ही कभी फ़ायरवॉल (कंप्यूटिंग) और इंट्रानेट राउटर (कंप्यूटिंग) द्वारा अवरुद्ध किया जाता है;
 * HTTP क्लाइंट (जैसे वेब ब्राउज़र) सभी आधुनिक कंप्यूटरों पर आसानी से उपलब्ध हैं;
 * अनुप्रयोगों में एम्बेडेड HTTP सर्वर का उपयोग करने की प्रवृत्ति बढ़ रही है जो घर का नेटवर्क |होम-नेटवर्किंग और सर्वव्यापी कंप्यूटिंग के बढ़ते रुझानों के समानांतर है।

विशिष्ट आवश्यकताएँ
प्लेटफ़ॉर्म की प्राकृतिक सीमाएँ जहाँ एक एम्बेडेड HTTP सर्वर चलता है, एम्बेडेड, या अधिक सटीक, एम्बेडेड HTTP सर्वर की गैर-कार्यात्मक आवश्यकताओं की सूची में योगदान देता है। इनमें से कुछ आवश्यकताएँ निम्नलिखित हैं। प्रत्येक विशिष्ट परियोजना के लिए, आवश्यकताएँ काफी भिन्न हो सकती हैं। उदाहरण के लिए, ROM और RAM फ़ुटप्रिंट एक बहुत गंभीर बाधा हो सकते हैं और सिस्टम डिज़ाइनर के विकल्पों को सीमित कर सकते हैं। सिस्टम के लिए C++ या जावा वर्चुअल मशीन की उपलब्धता एक और बाधा हो सकती है। बार-बार प्रदर्शन एक मुद्दा है, क्योंकि विशिष्ट एम्बेडेड सिस्टम एक साथ कई कार्य चलाते हैं और एक HTTP सर्वर उनमें से केवल एक है और इसे कम शेड्यूलिंग (कंप्यूटिंग) कार्य (कंप्यूटिंग) के रूप में कॉन्फ़िगर किया जा सकता है।
 * छोटी रैंडम एक्सेस मेमोरी  और  केवल पढ़ने के लिये मेमोरी  फ़ुटप्रिंट। सटीक आकार सिस्टम पर निर्भर करता है, लेकिन कई मामलों में कई मेगाबाइट से अधिक की कोई भी चीज़ एम्बेड करने योग्य नहीं होती है।
 * न्यूनतम CPU  उपयोग।
 * एकाधिक सीपीयू और ऑपरेटिंग सिस्टम संयोजनों के लिए क्रॉस संकलन समर्थन।
 * मौजूदा एप्लिकेशन के साथ आसान एकीकरण, जिसमें ऑपरेटिंग सिस्टम और एप्लिकेशन के साथ स्थैतिक लिंकिंग शामिल है।
 * यदि कोई फाइल सिस्टम नहीं है तो एप्लिकेशन सॉफ़्टवेयर स्मृति  से  वेब पृष्ठ ों की सेवा करना।
 * मॉड्यूलर प्रोग्रामिंग.
 * सिंगल थ्रेड (कंप्यूटिंग) और मल्टीथ्रेडिंग (सॉफ्टवेयर)|मल्टी-थ्रेड समर्थन।

यह भी देखें

 * वेब सर्वर सॉफ्टवेयर की तुलना
 * एप्लिकेशन सर्वर की तुलना
 * सर्वर (कंप्यूटिंग)
 * HTTP सर्वर
 * वेब सर्वर

बाहरी संबंध

 * libmicrohttpd contains an extensive list of embedded HTTP server libraries towards the bottom of the page
 * Example: functionalities of an embedded HTTP server component
 * Embedded Web Server vs. Embedded Application Server