occwserv: An occam Web-Server

Barnes, Frederick R.M. (2003) occwserv: An occam Web-Server. In: Communicating Process Architectures 2003, SEP 07-10, 2003 , UNIV Twente, Enschde, Nederlands. (The full text of this publication is not available from this repository)

The full text of this publication is not available from this repository. (Contact us about this Publication)
Official URL


This paper presents `occwserv', the occam web-server. This is a highly concurrent web-server, written in the occam multi-processing language, that supports the majority of the HTTP/1.1 protocol. Dynamic process and channel creation mechanisms are used to create scalable `server-farms', each responsible for a particular web-server function -- for example, reading client requests or running CGI processes. The design of the web-server is presented, along with some early performance benchmark results. Although performance may appear a limiting factor (when compared to other web-servers such as Apache), much is gained from the simplicity and security of occam. Extending the web-server with new functionality, for example, is intuitive and largely trivial -- with the guarantees that code is free from race-hazard and aliasing errors. An experimental non-standard addition, the OGI (occam Gateway Interface), is also presented. This provides a mechanism for dynamically loading and attaching pre-compiled occam processes to the running web-server, that can then handle one or multiple client connections. A text-based style adventure game is examined briefly, that allows multiple clients to interact within a `multi-user dungeon' (MUD) style environment.

Item Type: Conference or workshop item (UNSPECIFIED)
Uncontrolled keywords: occam web-server concurrency
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Science Technology and Medical Studies > School of Computing
Depositing User: Mark Wheadon
Date Deposited: 24 Nov 2008 18:00
Last Modified: 09 Jul 2014 10:59
Resource URI: https://kar.kent.ac.uk/id/eprint/13916 (The current URI for this page, for reference purposes)
  • Depositors only (login required):