HTTP Server

From PresenceWiki
Revision as of 12:32, 20 January 2011 by Mattpryor (Talk | contribs)

Jump to: navigation, search

Key Facts

Purpose: HTTP Servlet Engine designed to run On Demand Tasks
Type: Background Process
Started By: httpstart.exe or via Heartbeat Server and Remote Program Call Server


The Presence HTTP Server is a simple Servlet container, configured only to run servlets which call on an available Presence Server to serve Presence On Demand requests and SOAP requests. It is installed as part of Presence and can run on any machine provided it is properly configured. It can be combined with a switch to load balance across HTTP servers.

Presence Tasks can be invoked "On Demand" by making requests to the following URL:


The "/task/" part of the URL is mapped to a dedicated servlet which chains the request to a Presence server depending on Load Balancing settings. The HTTP headers, request parameters and Task alias are passed to the Presence Server, which translates these values into variables for use in the Task being called. The Presence Server sends the response of the Task (set in the magic variable "${response}") back to the HTTP Server which in turn sends it to the client browser.


The Server can be configured by editing the file named "httpserver.config" which is located in the "res/config" directory. This allows you to set the port that the HTTP server listens on (default 81) in addition to setting up multiple servers identified by host name in the request and configuring the file upload permissions and directory.

Architecture > Server Processes > HTTP Server

Heartbeat Server | Database Server | Presence Server | HTTP Server | Remote Program Call Server
Administration Client | Heartbeat Client