=HyperText Transport Protocol Daemon - Overview5

HFRD Hypertext Services - Technical Overview

p [next] [previous][contents]
;

2 - HyperText Transport Protocol Daemon - Overview




C The most fundamental component of the HFRD VMS Hypertext Services Jenvironment is the HTTPd, or HyperText Protocol Transport Daemon, or HTTP Jserver. It provides full multi-threaded support. VMS ASTs (Asynchronous @System Traps) are used to construct an I/O event-driven server. 

J It provides a complete implementation of a basic HTTP server, including: 

 

B It executes permanently on the server host, listening for client Lconnection requests on TCP/IP port 80 (by default). It provides concurrent Oservices for a (technically) unlimitted number of clients (constrained only by Lthe server resources). When a client connects HTTPd performs the following functions: 

    -
  1. creates a thread for this request.
  2. reads and analyzes the HTTP request sent,/
    depending on the nature of the request ... I
  3. closes the connection to the client and disposes of the thread data structures 


L For I/O intensive activities like file transfer and directory listing, the JAST-driven code provides an efficient, multi-threaded environment for the (concurrent serving of multiple clients. 

I For scripts, the technique of using multi-threaded, concurrent, spawned Osubprocesses, attached to standard input/output streams, provides a versatile, Hextensible, powerful scripting environment. Any DCL procedure or image Oexecuting within the subprocess can behave as an HTTP server. This capability Lis employed to easily extend the basic services provided by the core daemon Kcode. An HTTP script/server for this environment does not need to concern Mitself with network activities, it merely reads and writes from the standard I/O streams. 




p [next] [previous][contents]