Update NEWS files for next release
[ACE_TAO.git] / ACE / apps / JAWS / clients / WebSTONE / README
blobcc7faedb0a4cecc07ec1112b036094f64f6d8fff
3 README WebStone 2.0.1 bug fix release
4         Proxy server bug fixed (now correctly handles proxy server)
5         Error reading page_stats error fixed
6         More Windows NT integration
7         Correctly handles URL's to different hostnames in the filelist
8         Improved Solaris compatibility
10         NOTE: If you intend to run webstone with more than 100 URL
11 entries in the filelist, please edit src/bench.h and change the
12 MAXNUMOFPAGES value to reflect the higher number, and then recompile
13 everything. Copy the new binaries into the bin directory and then
14 run webstone.
16 README WebStone 2.0 Release version
18 WARNING: WebStone 2.0 results should not be compared with WebStone 1.1
19         results. Even under the same fileset performance will not be
20         equivalent.
22 Please see the notes for 2.0beta6 for quick and dirty install
23         This version includes a port of the webstone source code to Windows
24 NT. This port is still in progress, so it is not possible to guarantee
25 that everything is working correctly - however in our test configurations
26 it has performed correctly. Note that the supporting scripts and report
27 generating code has not been ported to NT yet.
29         This version also institutes some basic run rules to eliminate the
30 lack of conformity in Webstone performance quotes.
31         To report Webstone numbers, some basic rules should be followed:
33         1) The fileset used for the test must be the fileset.standard fileset
34         included in the distribution. Tests of CGI performance must be
35         with the file filelist.cgi-heavy, and tests of NSAPI performance
36         must be carried out with filelist.dynamic-heavy
38         2) The run time should be set for 10 minutes, and the number of
39         clients should vary from 20 clients to 100 clients in increments
40         of 10. When a connections/second time is quoted, it must include
41         information about the number of clients involved.
43         3) Any special TCP/IP tuning which the server has recieved should
44         be documented, as well as HTTPD server version and configuration
45         information such as logging, DNS lookups and number of threads.
48 README - WebStone 2.0beta6
50 WARNING: Do not compare WebStone 2.0 results with WebStone 1.0 results.
51         WebStone 2.0 introduces significant changes in testing methodology
52         and reporting.
54 This is the WebStone benchmark. Quick and dirty install:
55         - set up a Web server
56         - put this directory (WebStone) on a seperate machine (the "controller")
57         - "./webstone -setup", which does the following:
58                 - gui-configure
59                   This script may fail if you don't have a Web browser or
60                   Perl5. Don't worry, unless you want to use the GUI.
61                 - autoconf
62                   If the GNU autoconf fails for your OS, please forward the
63                   error messages, and any porting hints, to the author.
64                 - make install
65                   This may not be necessary, since IRIX binaries are included.
66                 - edit conf/testbed to reflect your site
67                   See the doc/FAQ-webstone.html for details.
68         - ./webstone -genfiles will put the files in conf/fileset
69                 onto your Web server.
70         - ./webstone
71         - to display a table of results: ./webstone -results
73 If you'd like to try out the GUI for WebStone:
74         - run "./webstone -setup", as above.
75         - make sure you have a Web browser installed
76         - ./configure
77         - ./webstone -gui
79 Files of interest:
80         README: This document.
81         README.FIRST: Quick and dirty directions.
82         README.DynamicWorkload: Information on the CGI and NSAPI workloads.
83         webstone: wrapper shell script for everything.
84                 Takes options:
85                 -gui: start the GUI mode
86                 -kill: kill stray WebStone processes
87                 -genfiles: build files (from conf/fileset)
88                         and rcp onto the server $SERVER
89                 - results: print table of results
90                 -setup: initial make and setup
91                 -silent: runs in the background
92                 -tail: tail -f of most recent run
94 Files of interest (./src):
95         Makefile, *.c, *.h: The Webstone source code
97 Files of interest (./bin):
98         checkfilelist: uses rsh to check web server for files in filelist.
99         genfiles, genrand: generates files of arbitrary length.
100         getstats: Collects network statistics from Web server, clients.
101         killbench: terminates stray WebStone processes.
102         rebootall: reboots all WebStone webclients.
103         runbench: wrapper script for WebStone.
104         webmaster: WebStone controller executable.
105         webstone: WebStone client executable.
106         wscollect: reports results in tabular format.
108 Files of interest (./conf):
109         filelist: default list of files on the Web server,
110                 with workload description.
111         filelist.photo: Model of a popular Web site
112                 containing photographic images.
113         filelist.ss: Model of SGI's Silicon Surf WWW site.
114         fileset: list of files for genfiles to create.
115         testbed: config file describing Web server, client, and network setup.
117 Documentation (./doc):
118         FAQ.html: The FAQ, current as of this distribution.
119         LICENSE: Legal status of WebStone.
120         testbed.help: Explains the parameters in conf/testbed.
121         webstone-white-paper.ps: The original WebStone white paper.
122         webstone.gif: The WebStone logo.
124 Additional documentation:
125         FAQ.html: Frequently Asked Questions, with answers
126         webstone.ps: PostScript white paper on WebStone
128 Problems, etc. may be addressed to the WebStone mailing list.
129 Read the FAQ for details.
131 Release Notes (2.0 beta6):
132         * fixed a bug for Web servers not on port 80
133         * further changes to bin/wscollect.pl
135 Release Notes (2.0 beta5):
136         * numerous minor fixes suggested by gcc -Wall -pedantic
137         * updated FAQ
138         * changed bin/wscollect.pl to use Perl formats
140 Release Notes (2.0 beta4):
141         * added #include <sys/time.h> to bench.h
142         * changed webclient located to $TMPDIR - this should help people
143         who don't want to run WebStone as root
144         * changed check for libm to floor() instead of sqrt(). Apparently
145         some systems implement sqrt() in libc - let's hope no one implement
146         floor() in libc and sqrt() in libm!
148 Release Notes (2.0 beta3):
149         * more portability fixes
150         * successfully compiled on FreeBSD 2.2, IRIX without any source
151         changes
153 Release Notes (2.0 beta2):
154         * additional timezone fixes for SunOS
156 Release Notes (2.0 beta1):
157         * fixed a bug in the rexec portion of webmaster.c
158         * fixed a bug in the usage() routine of webmaster.c
159         * added bin/genfiles-from-filelist.sh
160                 - bin/genfiles-from-filelist.sh <filename>
161                 - generates appropriate-length files from <filename>
162                 - <filename> must contain three fields:
163                         <relative URL>  <weight>        #<size in bytes>
164                         example: /file.html     1       #1024
165         * added bin/mine-logs.pl
166                 - usage: mine-logs.pl <filename>
167                   where <filename> is an http server log file
168                 - writes a WebStone workload to standard output
170 Release Notes (2.0 alpha5):
171         * revised default testbed file
172         * changed wscollect to wscollect.pl for consistency
173         * changed webstone-gui to webstone-gui.pl for consistency
174         * added some NT porting hints
175         * added autoconf, which should help Linux and SunOS porting
177 Release Notes (2.0 alpha4):
178         * added SunOS and Linux portability elements
179         * new scheme for random access to pages
180         * converted several static arrays to dynamic pointers
182 Release Notes (2.0 alpha2):
183         * fixed per-page statistics
184         * new, client-independent data-passing scheme
185         * added support for proxy servers
187 Release Notes (2.0 alpha1):
188         * new filelist scheme - however, this breaks per-page statistics
189         * minor fixes
191 Release Notes (1.1):
192         * Improved webclient performance by combining GET and ACCEPT
193                 HTTP headers in one write() call.
194         * Improved webclient performance on systems that always attempt
195                 to map protocol names to numbers using YP.
196         * WARNING: since the old code introduced a significant latency
197                 in some systems, DO NOT compare WebStone 1.1 results
198                 with results generated by any previous versions.
200 Release Notes (1.0.3):
201         * Netscape Server 1.1.2 exposed a couple bugs, which I've now fixed.
203 Release Notes (1.0.2):
204         * Fixed runbench so that ITERATIONS, MINCLIENTS, and MAXCLIENTS don't
205                 have to have a common denominator any more.
206         * Fixed a few cosmetic bugs.
208 Release Notes (1.0.1):
209         * Fixed select() bug in webmaster
211 Release Notes (1.0 final):
212         * Fixed the "Error reading 2nd timing info" bug
213         * Fixed numerous bugs in the GUI
214         * Froze feature set. Work can now begin on WebStone 1.1
216 Release Notes (1.0b3):
217         * New Web browser GUI
218                 NOTE: most Web browsers take up substantial CPU time.
219                 If you run the GUI, we recommend that you make the controller
220                 a separate machine, and don't run any WebStone clients on it.
221         * Minor bug fixes
222                 Squashed some dubious error messages, fixed some client-
223                 controller communications problems.
224         * Reporting changes
225                 Changes the units and order of the final summary statistics.
226                 Basically, this is for my own convenience, so I don't have to
227                 massage the data quite so much before using it. wscollect
228                 now reports only the metrics I regard as important - but all
229                 metrics are still reported in the runs/*/run files.
231 LEGAL STUFF:
233 This file and all files contained in this directory are
234 copyright 1995, Silicon Graphics, Inc.
236 This software is provided without support and without any obligation on the
237 part of Silicon Graphics, Inc. to assist in its use, correction, modification
238 or enhancement. There is no guarantee that this software will be included in
239 future software releases, and it probably will not be included.
241 THIS SOFTWARE IS PROVIDED "AS IS" WITH NO WARRANTIES OF ANY KIND INCLUDING THE
242 WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE,
243 OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
245 In no event will Silicon Graphics, Inc. be liable for any lost revenue or
246 profits or other special, indirect and consequential damages, even if
247 Silicon Graphics, Inc. has been advised of the possibility of such damages.