Utilities5

HFRD Hypertext Services - Technical Overview

p [next] [previous][contents]


7 - Utilities




L Foreign commands for these utilities (and the HTTPD control functionality) Mwill need to be assigned in the adminstration users' LOGIN.COM, for example: !

  CHKMAP == "$HT_EXE:CHKMAP"  HTTPD == "$HT_EXE:HTTPD"   HTTPDMON == "$HT_EXE:HTTPDMON"   WWWRKOUT == "$HT_EXE:WWWRKOUT"


7.1 - HTTPd Monitor




? The HTTPd server may be monitored using the HTTPDMON Eutility. This utility continuously displays a screen of information comprising three sections: 

    
  1. Process Information
    MHTTPd process information includes its up-time, CPU-time consumed (excluding 6any subprocesses), I/O counts, and memory utilization.
  2. Server Counters
    LThe server counters keep track of the total connections received, accepted, Grejected, etc., totals for each request type (file transfer, directory listing, image mapping, etc.).
  3. Latest Request
    JThis section provides the originating host, HTTP request, response status &code, and some transaction statistics.


. The following example provides sample output:V

   Port: 80              HTTPDMON v1.0.0 AXP         Monday, 11-DEC-1995 11:12:128   Process: HTTPd:80    PID: 2DE0143C  User: HTTP$SERVER,     Start: 1  Exit Status: n/a  (Zeroed: 0)-        Up: 0 04:05:55.47  CPU: 0 00:00:22.57:       BIO: 21493  DIO: 2760  Pg.Flts.: 3921  Pg.Used: 14%H    WsSize: 1240 (620kB)  WsPeak: 4368 (2184kB)  PeakVirt: 6848 (3424kB)%     Files: 1/100  Subprocesses: 0/50C   Connect: 19  Accept: 19  Reject: 0  Busy: 0  Current: 1  Peak: 2<     Error: 0  Parsed: 19 (1 redirect)  Forbidden: 0  RMS: 0        GET: 16  HEAD: 2  POST: 1-      File: 13 (0)  Menu: 0 (0)  Directory: 5$     sHTML: 0  IsMap: 1  Internal: 00    Script: 0  Auto.Script: 0  Subprocess: 0 (0)G       1xx: 0  2xx: 18  3xx: 0  4xx: 1  5xx: 0  (0 errors)  Redirect: 0%        Rx: 22806  Tx: 94757  (bytes)4      Time: 11 11:12:08  Host: beta.hfrd.dsto.gov.au#    Status: 200  Rx: 1198  Tx: 2274.   Request: GET /ht_root/doc/htd/htd_0700.html


= The /HELP qualifier provides a brief usage summary.

I This information is, in part, obtained from the following logical names:



E The server counter values are carried over when a server (re)starts N(provided the system has stayed up). To reset the counters use the following command on the server system: 

  $ HTTPD /DO=ZERO
#

7.2 - Mapping Rule Checker




5 The mapping rule database may be verified using the :CHKMAP utility. This utility will load the rule Idatabase, reporting on any rules that have an incorrect format, and then Ooptionally map a URL format path to a VMS file specification, or reverse-map a KVMS file specification to a URL format, or report an error! A script path Nwill be mapped into script and derived path components. Various rules may be Bchecked from the command-line for correct mapping to and from VMS ;specifications before committing them to a working server. 

J By default the utility will load any defined rule mapping database (i.e. NHTTPD$MAP) via the appropriate logical name. If a specific, non-default rule >file is required it can be specified using the /MAP= qualifier. 

E URL format paths begin with, and contain forward-slashes. For this Jreason, when being specified on the command line, must be enclosed within Hdouble-quotation marks. This does not apply to VMS file specifications.

   $ CHKMAP   $ CHKMAP /MAP=TEST.CONF"   $ CHKMAP "/hyperdata/home.html",   $ CHKMAP USER$DISK:[DANIELM.WWW]HOME.HTML


= The /HELP qualifier provides a brief usage summary. 2

7.3 - Server Workout (stress-test)



4 The WWWRKOUT (``World Wide Web Workout'') Eutility exercises an HTTP server, both in the number of simultaneous Oconnections maintained and in the number of back-to-back sequential connection requests and data transfers. 

B This utility can be used to stress-test the HFRD VMS HTTP Kserver (or any other), or to make comparisons between it and other servers.

L It sets up and maintains a specified number of simultaneous connections to Na server. It reads a buffer of data from each connection in turn, where data Mis waiting (does not block), until the document transfer is complete and the Oconnection closed by the server. It then closes the local end and immediately Oreuses the now-free socket to initiate another sequence. If enabled (it is by Mdefault), the utility attempts to reflect the real-world in varying the data Ntransfer rate for each connection, by setting the number of bytes read during Heach read loop differently for each connection. All transfered data is discarded. 

G The data transfer rate for each connection is displayed at connection Mclose. It is by default it is the effective transfer rate, that is the rate Nfrom opening the connection to closing it, and so includes request processing ?time, etc. If the /NOEFFECTIVE qualifier is employed 2it measures the document data transfer rate only. 

I Although a single document path may be specified on the command line it Kis preferable to supply a range of document paths, one per line in a plain Ltext file. Each document path and/or type specified should be different to Othe others, to exercise the server and file system cache. Any number of paths Mmay be specified in the file. If the file is exhausted before the specified Knumber of connections have been established the file contents are recycled Hfrom the first path. If a path or a file of paths is not specified the 8utility just continually requests the welcome document. 

G To assess a server's total throughput choose paths that lead to large Bdocuments (> 50K), where the overhead of connection setup, ruleOprocessing and transfer initiation are less significant than the data transferOitself. The buffer size variation functionality should be disabled using the ?/NOVARY qualifier when assessing data transfer rates. BResponsiveness is better assessed using small documents (< 2K),Lwhere the overhead of the non-data-transfer activities is more significant.

=WWWRKOUT [server_host_name[:port]] [path] [qualifiers]



Examples:

  $ WWWRKOUT3  $ WWWRKOUT www.server.host "/hyperdata/home.html"3  $ WWWRKOUT www.server.host:8080 /FILEOF=PATHS.TXTA  $ WWWRKOUT /SERVER=www.server.host /PORT=8080 /FILEOF=PATHS.TXTH  $ WWWRKOUT www.server.host:8080 /FILEOF=PATHS.TXT /NOEFFECTIVE /NOVARYO  $ WWWRKOUT www.server.host /FILEOF=PATHS.TXT /COUNT=500 /SIMUL=20 /BUFFER=512


= The /HELP qualifier provides a brief usage summary.




p [next] [previous][contents]