From da4dcace3b78ca5a066caae4b21ba5e9060bb766 Mon Sep 17 00:00:00 2001 From: Rowan Powell <rp17@it-innovation.soton.ac.uk> Date: Wed, 10 Jan 2018 15:45:09 +0000 Subject: [PATCH] Fixed naming errors, slide_id changed to slice_id, clients now generate on init --- src/mediaServiceSim/LineProtocolGenerator.py | 2 +- .../LineProtocolGenerator.cpython-36.pyc | Bin 2997 -> 3260 bytes src/mediaServiceSim/serviceSim.py | 31 +++++++++--------- 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/src/mediaServiceSim/LineProtocolGenerator.py b/src/mediaServiceSim/LineProtocolGenerator.py index 25d19df..1d95e44 100644 --- a/src/mediaServiceSim/LineProtocolGenerator.py +++ b/src/mediaServiceSim/LineProtocolGenerator.py @@ -78,7 +78,7 @@ def _generateServerConfig(ID, location, cpu, mem, storage, time): # metric result = 'host_resource' # Tags - result += ',slide_id=' + quote_wrap(ID) + result += ',slice_id=' + quote_wrap(ID) result += ',location=' + quote_wrap(location) result += ' ' # Fields diff --git a/src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-36.pyc b/src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-36.pyc index f38f213dc30a01a2424732fbe023db717c3fe646..cf9cec5c15d858f591cc38897f4a9f587e1bd66d 100644 GIT binary patch delta 373 zcmdlgzDH8on3tDpzG_(1Bz^{l#|%h-3CMN;;^Lf%$|<~}DPk=QQ9LP(!3>(>8+(3o z)`R3hfEkEcfY=#`i*<lR3S%u(4O0qJ2}2D-Gov_zIRlu_45e9W;9@|tSpA~Ja|=?_ zQxc0a;)_#@$}*Ev<CF9A(lXPlICY9j^YSwD(rt@C7F3DlCRTvt@=}vaQuR~flXEgt z^Gb?sH5rQ(fbyEmMe0B*N)%ZcT-9VpE>S~isL`cGsc_5EO7oISGV}8qfqIL%fCK{* z3zGmN2NMrdk=Eo!u0Y-%kPO(nK#PDPl9PXMnFvjUi!v3l0oj_olkK>T8MP+oavMmA a0R=c11(-PaIfOX`I7EP?5RlEy!3qF!_fo$A delta 131 zcmdlZxm8@*n3tE!PbDlWi;scfF#{4{0<s-|xHx5^atbSBFoUM(#wkBJC%1C@@-~6Q zK?)ccixeg|a!XGB!EGYc4i{xAVgs@@c_!QO7*8(a(UA}Vayb|Um^k=3ggFE_M1Z6a HkY)t{4rLU^ diff --git a/src/mediaServiceSim/serviceSim.py b/src/mediaServiceSim/serviceSim.py index a88b28a..4cae815 100644 --- a/src/mediaServiceSim/serviceSim.py +++ b/src/mediaServiceSim/serviceSim.py @@ -106,7 +106,7 @@ class DemoClient(object): class DatabaseManager(): def __init__(self, influx_url, db_name): self.influx_url = influx_url - self.influxDB = db_name + self.influx_db = db_name def database_up(self): self._createDB() @@ -115,34 +115,28 @@ class DatabaseManager(): self._deleteDB() def _createDB(self): - self._sendInfluxQuery('CREATE DATABASE ' + self.influxDB) + self._sendInfluxQuery('CREATE DATABASE ' + self.influx_db) def _deleteDB(self): - self._sendInfluxQuery('DROP DATABASE ' + self.influxDB) + self._sendInfluxQuery('DROP DATABASE ' + self.influx_db) def _sendInfluxQuery(self, query): query = urllib.parse.urlencode({'q': query}) query = query.encode('ascii') - req = urllib.request.Request(self.influxURL + '/query ', query) + req = urllib.request.Request(self.influx_url + '/query ', query) urllib.request.urlopen(req) # DemoServer is the class that simulates the behaviour of the MPEG-DASH server class DemoServer(object): - def __init__(self, cc, si, db_url, db_name): + def __init__(self, cc, si, db_url, db_name, server_id, server_location): self.influxDB = db_name # InfluxDB database name self.id = uuid.uuid4() # MPEG-DASH server ID self.clientCount = cc # Number of clients to simulate self.simIterations = si # Number of iterations to make for this simulation self.influxURL = db_url # InfluxDB connection URL self.currentTime = int(round(time.time() * 1000)) # The current time - - def configure(self, server_id, server_location): - print("Configuring") - self.configure_VM('starting') - self.configure_VM('running') - time.sleep(1) - self.configure_server(server_id, server_location) + self._configure(server_id, server_location) def shutdown(self): print("Shutting down") @@ -259,10 +253,18 @@ class DemoServer(object): return self.simIterations - # 'Private' methods ________________________________________________________ def _generateVM(self, state, delay): return lp._generateVMConfig(state, 1, '100G', '1T', self._selectDelay(delay)) + # 'Private' methods ________________________________________________________ + def _configure(self, server_id, server_location): + print("Configuring") + self.configure_VM('starting') + self.configure_VM('running') + time.sleep(1) + self.configure_server(server_id, server_location) + self.generate_clients() + def _cpuUsage(self, clientCount): cpuUsage = randint(0, 10) @@ -370,8 +372,7 @@ time.sleep(2) database_manager.database_up() time.sleep(2) # configure servers -demoServer = DemoServer(clients, iterations, 'http://localhost:8186', 'testDB') -demoServer.configure("Server1", "Southampton") +demoServer = DemoServer(clients, iterations, 'http://localhost:8186', 'testDB', "Server1", "Southampton") # Start simulation print("Starting simulation") while True: -- GitLab