A Framework for Satisfying the Performance Requir irements of Contain inerized Software Systems Through Mult lti-Versionin ing Alireza Goli Cor-Paul Bezemer Hamzeh Khazaei Sara Gholami 1 / 28
An example problem: The Sla lashdot Effect 2 / 28
One solu lution to the Sla lashdot Effect is is to in increase the resources 3 / 28
Another solu lution is is to manage the availa ilable le resources better 4 / 28
Hig igh-level architecture of f a serv ervice in in Docker, where req equests are lo load balanced in in a Round Robin manner 5 / 28
We present Docker wit ith mult lti-versioning: DockerMV 6 / 28
DockerMV takes away the service management nig ightmare Load Load Balancer Balancer Load Load Balancer Balancer 7 / 28
How do we evaluate DockerMV? 8 / 28
The TeaStore applic lication, an onli line webstore applic lication 9 / 28
The Znn applic lication, a three-tie ier onlin line news appli lication 10 / 28
We conducted three exp xperim iments for the TeaStore appli lication Ideal case experiment Worst case experiment Recommender with multiple training Recommender with single training (Only heavy weight) (Only light weight) Adaptive experiment Adaptive load distribution (Mix of heavy and light weight) 11 / 28
We conducted three exp xperim iments for the Znn applic lication Ideal case experiment Worst case experiment Multimedia responses only Text responses only (Only heavy weight) (Only light weight) Adaptive experiment Adaptive load distribution (Mix of heavy and light weight) 12 / 28
Workload appli lied to the TeaStore appli lication 100 users sending HTTP requests for 1,000 seconds (Almost 97 requests per second) We defined the SLA response time threshold to be 450 ms 13 / 28
In the TeaStore application’s ideal case experiment, the response time exceeds th the th threshold under r th the lo load Ideal case exp. 14 / 28
In In th the TeaStore application's worst t case experiment, , th the res esponse tim time fall lls below th the th threshold under th the loa load Worst case exp. 15 / 28
In the TeaStore application’s adaptive experiment, the response time is main intained clo lose to th the th threshold Adaptive exp. 16 / 28
The ratio io of f req equests res esponded by th the Heavy vyWeight version of f th the Recommender se serv rvic ice in in th the TeaStore's adaptive experiment 17 / 28
Workload appli lied to the Znn appli lication 18 / 28
In the Znn application’s ideal case experiment, the response time exceeds th the th threshold under r th the lo load Ideal case exp. 19 / 28
In In th the Znn application's worst case experiment, th the res esponse tim time fall lls below th the th threshold under th the loa load Worst case exp. 20 / 28
In the Znn application’s adaptive experiment, the response time is main intained around th the th threshold Adaptive exp. 21 / 28
DockerMV source code is is public licly availa ilable le on Git itHub https://github.com/pacslab/DockerMV 22 / 28
We present Docker wit ith mult lti-versioning: DockerMV 23 / 28
22 / 28
In the TeaStore application’s adaptive experiment, the response time is clo lose to th the th threshold Adaptive exp. 25 / 28
26 / 28
In the Znn application’s adaptive experiment, the response time is main intained around th the th threshold Adaptive exp. 27 / 28
Sara Gholami sgholami @ualberta.ca 28 / 28
Format of rule les for the lo load bala lancer $METRIC $OPERATOR $THRESHOLD, ( version $VERSION_NAME perc =$PERCENTAGE;)+ For example: RT > 0.4, version recommender:HeavyWeight perc =40; version recommender:LightWeight perc =60; 29 / 28
How to run DockerMV docker service create [$OPTIONS] $IMAGE 1 $REPLICATION 1 … $IMAGE n $REPLICATION n For example, docker service create e REGISTRY_HOST=host_ip e REGISTRY_PORT=1000 10.2.5.26 Network recommender 8080 rules.txt sgholami/teastore-recommender:HeavyWeight 1 sgholami/teastore-recommender:LightWeight 1 30 / 28
Recommend
More recommend