Skip to content
Snippets Groups Projects

CS425_MP1

Mai Pham (maitp2) and Trang Do(trangtd2)

Instructions

Run servers and client

  1. ssh to VM: ssh <NETID>@fa22-cs425-NNXX.cs.illinois.edu
  2. git clone https://gitlab.engr.illinois.edu/trangtd2/cs425_mp1.git
  3. cd to project dir
  4. The program is compiled to two jar files: out/artifacts/grep_server_jar/grep.jar(server execution jar file) and out/artifacts/grep_client_jar/grep.jar(client execution jar file)
    In order to run server on single machine/VM, run the jar file:
java -jar out/artifacts/grep_server_jar/grep.jar -p 5000 

User can replace 5000 by any port number 4. Set configFile in files/config.txt, fill out number of servers line by line. Config file has format:

<host> <port> <dir of log file>
  1. Run client
java -jar out/artifacts/grep_client_jar/grep.jar -cf <configFile> --command "grep -c <pattern/regex>" 

Unit test

User run unit test in GrepTest.java This test is test for 10 VMs with config file is in files/config.txt, therefore it is required to keep all 10 servers running and actual test result is in files/test_result

Note

  1. files/bash/send_log.sh: use to push demo data (provided demo data) to all 10 VMs
  2. files/bash/send_jars.sh: use to send all client execution jar and server execution jar to all 10 VMs
  3. files/bash/run_jars.sh: use to run all servers from local machine
  4. files/bash/kill_process.sh: use to kill server processes running in all 10 VMs