Installating RUBBoS Servlets Implementation
RUBBoS Files Structure
The directory tree of RUBBoS is organized as follow:
|Makefile configuration file (if you use make you should edit this file to match your
|Ant build files configuration file (if you use ant you should edit this file to match your
|contains the results of the measurements and the scripts to generate
graphs and statistics.
|Benchmark client to simulate clients and perform measurements.
|contains the SQL files used to generate the database data.
|contains the Java Servlets version of RUBBoS, the build.xml file for ant and the scripts to start and stop Tomcat.
|contains the source code of the servlets.
|contains the html files for the version of RUBBoS that is designed to
be used with Java servlets only. This directory is structured as a war.
|contains the files that describes the workload of the bulletin board system.
We designed various patterns of request distribution. The browse_only_transition
pattern simulate user's behavior that only generate read requests from
The user_transition and author_transition patterns are a mix of read and
Compiling and running
To compile the servlet version of RUBBoS, do the following:
Edit RUBBoS/build.properties and set the j2ee property with the path to j2ee.jar.
Edit mysql.properties and update the database information for your configuration.
Edit and update tomcat_start.sh and tomcat_stop.sh for your Tomcat configuration.
Update also the path to your database driver.
Edit edu/rice/rubbos/servlets/Config.java and update the DatabaseProperties variable.
This will compile the servlets and generate rubbos_servlets.jar and rubbos.war.
rubbos.war contains rubbos_servlets.jar in WEB-INF/lib.
cp rubbos.war TOMCAT-HOME/webapps
You can now access the RUBBoS application from your web browser at http://localhost:8080/rubbos/index.html
To compile the client emulator:
Various environment variables are defined in the RUBBoS/config.mk. You have to set them to match your installation directories :
- JAVA = path to the program execution tool (java)
- JAVAC = path to the java compiler (javac or jikes)
- RMIC = path to the stub generator (rmic)
- CLASSPATH = your classpath including path to j2ee.jar and servlet.jar.
To run the the client emulator:
Update the rubbos.properties_XX files to match your configuration.
Update the rubbos-servlets.sh file to match your configuration (path, login, etc).
Run rubbos-servlets.sh. The results will be generated in the RUBBoS/bench directory.