Milestone 2 - SCG-TeamNpComplete/Storm-Detector GitHub Wiki

#Storm Detector Milestone 2

Storm Cluster URL:

Production Server: http://ec2-35-161-48-143.us-west-2.compute.amazonaws.com:9999/SG_MICROSERVICE_STORMDETECTOR/gateway/StormDetection/get

Test Server: http://ec2-35-160-137-157.us-west-2.compute.amazonaws.com:9999/SG_MICROSERVICE_STORMDETECTOR/gateway/StormDetection/get

Upon hitting the Storm Detector's end point, XML message will displayed as output. Storm Detector invokes the Storm Detector.(https://github.com/SCG-TeamNpComplete/Storm-Detector)

##Docker

Storm Detector Dockerhub Link: https://hub.docker.com/r/kedargn/stormdetector/

For milestone 2, Storm Detector is running inside Docker container.

  • Dockerfile contains the instructions for docker image.
  • Travis CI build the docker image according the Dockerfile and pushes it to Dockerhub.
  • Travis CI invokes Amazon Code Deploy. Amazon Code Deploy in turn invokes scripts/install.sh & scripts/before_install.sh script.
  • scripts/before_install.sh kills the removes Storm Detector's docker image and container, if it exists.
  • scripts/install.sh script pulls the docker image from Dockerhub and runs it inside docker container in Amazon EC2 instance.

Multilevel Testing

Unit Test

All the microservices include unit tests and is deployed in the test instance of EC2. The code can be found under branch milestone-2-test for each service.

Capacity Test Result

We used Apache JMeter to run the capacity Tests. We tried to overwhelm the system by running multiple threads in burst mode. We tweaked the test environment and added delay/computation as the number of instructions was low in our microservice code. The test results with thread count, error percentage and throughput can be found under Github Issue section- Milestone2: Capacity Testing Results.