Embedded HTTP server

Embedded HTTP server

An embedded HTTP server is a component of a software system that implements the HTTP protocol. Examples of usage within an application might be:

* To provide a thin-client interface for a traditional application.
* To provide indexing, reporting, and debugging tools during the development stage.
* To implement a protocol for the distribution and acquisition of information to be displayed in the regular interface — possibly a web service, and possibly using XML as the data format.
* To develop a web application

There are a few advantages to using HTTP to perform the above:
* HTTP is a well studied cross-platform protocol and there are mature implementations freely available.
* HTTP is seldom blocked by firewalls and intranet routers.
* HTTP clients (e.g. web browsers) are readily available with all modern computers.
* There is a growing tendency of using embedded HTTP servers in applications that parallels the rising trends of home-networking and ubiquitous computing.

Typical requirements

Natural limitations of the platforms where an embedded HTTP server runs contribute to the list of the functional requirements of the embedded, or more precise, embeddable HTTP server. Some of these requirements in random order
* "Small" RAM and ROM foot print. The exact number depends on the system, but in many cases anything over several megabytes is not embeddable.
* Low CPU consumption.
* Cross compilation support for multiple CPU and operating system combinations.
* Easy integration with existing application, including static link with the operating system and application.
* Serving pages from the RAM if there is no file system.
* Modularity.
* Single thread and multi-thread support.For every specific project requirements can vary significantly. For example, ROM and RAM footprints can be very serious constraint and limit the choices of the system designer. C++ or JVM availability for the system can be another constraint. Frequently performance is an issue, because typical embedded system runs multiple simultaneous tasks and an HTTP server is only one of them and is usually a low priority task.

See also

* Comparison of web servers
* Comparison of lightweight web servers


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Embedded system — Picture of the internals of an ADSL modem/router. A modern example of an embedded system. Labelled parts include a microprocessor (4), RAM (6), and flash memory (7). An embedded system is a computer system designed to do one or a few dedicated… …   Wikipedia

  • AppWeb Web Server — infobox Software developer = [http://www.embedthis.com Embedthis] released = release date|2003|11|10 latest release version = 2.4.2 latest release date = release date|2008|03|15 operating system = Cross platform genre = Web server language =… …   Wikipedia

  • Embedded Linux — is the use of a Linux operating system in embedded computer systems such as mobile phones, personal digital assistants, media players and other consumer electronics devices, networking equipment, machine control, industrial automation, navigation …   Wikipedia

  • Embedded SQL — is a method of combining the computing power of a programming language and the database manipulation capabilities of SQL. Embedded SQL statements are SQL statements written inline with the program source code of the host language. The embedded… …   Wikipedia

  • Comparison of web server software — This article is a comparison of web server software. Contents 1 Overview 2 Features 3 Operating system support 4 See also …   Wikipedia

  • Embedded database — An embedded database system is a DBMS that is tightly integrated with an application that requires access to stored data, such that the database system is “hidden” from the application’s end user and requires little or no ongoing maintenance. It… …   Wikipedia

  • Server Message Block — In computer networking, Server Message Block (SMB), also known as Common Internet File System (CIFS, /ˈsɪfs …   Wikipedia

  • Embedded-Database — Ein eingebettetes Datenbanksystem ist ein in einer Anwendung eingebettetes Datenbanksystem, das nach außen nicht sichtbar in Erscheinung tritt. Inhaltsverzeichnis 1 Eigenschaften 2 Einsatz in Klein und Kleinstgeräten 3 Liste der eingebetteten… …   Deutsch Wikipedia

  • Server-Console — Ein Konsolenserver (Englisch: Console Server) ist eine Fernwartungskomponente und dient zum Management von Rechnernetzknoten, die eher im Rechenzentrum anzutreffen sind, wie (Unix )Server, Router, Switches, Firewalls, Telefonanlagen, USVs. Die… …   Deutsch Wikipedia

  • Server appliance — Snap Server 650 A server appliance is a computer appliance that works as a server. It is designed so that the end user does not need to understand the details of the operating system or the commands associated with it. Server appliances have… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”