README
1This is a simple demo of the HTTP server facilities, providing a simple
2body and the three documented server instantiations.
3
4---+ The server main programs are:
5
6 $ demo_threads.pl :
7 Run threaded server. Requires SWI-Prolog with thread-support.
8 The server is started at port 3000 using server/0. server/2
9 allows to specify options. tm/0 provides a graphical display
10 of the runing threads. See source-file.
11
12 $ demo_xpce.pl :
13 Run XPCE-based event-driven server. Requires XPCE. Use
14 ?- server(3000). to start the server at port 3000.
15
16 $ demo_inetd :
17 To install this, adjust the first line of this file to point
18 to the installed Prolog executable and add the following line
19 to /etc/inetd.conf (adjust as needed):
20
21 4001 stream tcp nowait nobody /usr/sbin/tcpd /usr/lib/pl-5.1.4/library/http/demo/demo_inetd
22
23---+ Session management demo:
24
25 $ calc.pl :
26 Multi-threaded server with session management using the
27 html_write.pl library. See source for usage.
28
29---+ File serving demo:
30
31 $ demo_files.pl :
32 Is a multi-threaded server that serves static files and
33 directory indices.
34
35---+ Client demo
36
37 $ demo_client.pl :
38 Simple multi-threaded client to test the server under
39 different conditions. Requires SWI-Prolog with thread-support.
40 See source for usage.
41
42---+ Performance testing
43
44A very early start of some routines to validate the server platform.
45Eventually, stress_server.pl will serve different tests from multiple
46locations and stress_client.pl will contain client code to run
47individual tests as well as doing multi-threaded tests.
48
49 $ stress_server.pl :
50 Server platform.
51
52 $ stress_client.pl :
53 Client.
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69