Distributed Simjava - MVS Example
This example is the distributed version of the
MVS example. Due to the total execution time, this example only sends
1000 jobs through the MVS system. The example is composed of the following
Java source files:
- JobIF.java -- RMI interface allowing
remote access to the data stored in a Job instance.
- StatsClassIF.java -- RMI interface
allowing remote access to the data stored in StatsClass.
- ServerIF.java -- RMI interface allowing
remote access to data local to a server.
- Sim_expon_obj.java -- An
exponentially distributed random number generator.
- mvs.java -- Contains the following classes:
- Job -- A user-defined object that gets passes through the MVS
system via simjava events.
- reportFileClass -- Prints out the results of the simulation to a
report file.
- StatsClass -- Used to compute system-level statistics.
- Termination -- Generates the final report.
- Server -- Contains the behavior of the servers.
- Source -- Contains the behavior of the sources.
- Sink -- Contains the behavior of the sink.
- Master.java -- The Master program that:
- Creates an instance of the Sim_system and binds it in the RMI
registry.
- Creates an instance of the StatsClass and binds it in the RMI
registry.
- Creates an instance of the Termination class.
- MVSServers.java -- Creates the server
instances (jess, cpu1, cpu2, prt).
- MVSSink.java -- Creates the MVS system
sink.
- MVSSources.java -- Creates the source
instances (m300, m1200, m2400, l9600).
To Run:
- Download and
install
the Distributed Simjava Software.
- Start the rmiregistry on the machine where the Master program will
be run.
- Start the Master program by executing the command
java Master registryHost registryPort #Entities
where
- registryHost
is the name of the machine where the RMI registry has been started
- registryPort
is the port that the RMI registry is listening to
- #Entities
is the number of expected entities (10 for this example)
- Start the MVS Sources by executing the command
java MVSSources registryHost registryPort
where
- registryHost
is the name of the machine where the RMI registry has been started
- registryPort
is the port that the RMI registry is listening to
- Start the MVS Servers by executing the command
java MVSServers registryHost registryPort
where
- registryHost
is the name of the machine where the RMI registry has been started
- registryPort
is the port that the RMI registry is listening to
- Start the MVS Sink by executing the command
java MVSServers registryHost registryPort
where
- registryHost
is the name of the machine where the RMI registry has been started
- registryPort
is the port that the RMI registry is listening to