Last active
August 29, 2015 14:05
-
-
Save johnmee/75d1fdf8e7c741a56dc6 to your computer and use it in GitHub Desktop.
Nearmap.com Test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import time | |
| class DataSource(object): | |
| """ | |
| A datasource that starts with some data and takes 50 ms to read/write | |
| """ | |
| DELAY = 0.05 # 50 milliseconds | |
| def __init__(self): | |
| """ | |
| Start with data key0/value0, key1/value1, ..., key10/value10 | |
| """ | |
| self.values = {} | |
| for idx in range(10): | |
| self.values["key{}".format(idx)] = "value{}".format(idx) | |
| def get_value(self, key): | |
| """ | |
| Return the value for key after waiting 50ms | |
| """ | |
| time.sleep(self.DELAY) | |
| try: | |
| return self.values[key] | |
| except KeyError: | |
| return None | |
| def store_value(self, key, value): | |
| """ | |
| Store the key/value pair after waiting 50ms | |
| """ | |
| time.sleep(self.DELAY) | |
| self.values[key] = value | |
| class DistributedCacheStore(object): | |
| """ | |
| The distributed cache starts empty and needs 5ms to read/write | |
| """ | |
| DELAY = 0.005 # 5 milliseconds | |
| def __init__(self): | |
| """ | |
| The cache starts empty | |
| """ | |
| self.values = {} | |
| def get_value(self, key): | |
| """ | |
| Return the value for key after waiting 50ms | |
| """ | |
| time.sleep(self.DELAY) | |
| try: | |
| return self.values[key] | |
| except KeyError: | |
| return None | |
| def store_value(self, key, value): | |
| """ | |
| Store the key/value pair after waiting 50ms | |
| """ | |
| time.sleep(self.DELAY) | |
| self.values[key] = value |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Python version of the Nearmap.com technical test | |
| https://github.com/izevaka/nearmap-test | |
| The test is set in C#. I suggested that was a bit silly for a Python candidate, and they agreed. So I translated it into a Python test for them. | |
| They were intrigued by this solution, but, after much internal discussion, ultimately concluded they didn't like it. The primary objection was "why didn't you just use a conventional lock?". The question successfully exposed that I was completely unaware of what convention dictated. Nonetheless, I defend this solution, because, and I didn't enunciate it eloquently at the time, it does not create the bottleneck that a conventional lock would; in a typical lock/release solution all threads must pass through a common gate, creating a potential bottleneck. | |
| This solution implements no gate and no bottleneck. Threads seeking known keys can get on with their life without queuing for a lock. Threads seeking unknown keys sleep until, the single thread that is fetching the value, returns. | |
| Of course, my theorizing might be complete bunk depending on the implementation of a Global Interpreter Lock. | |
| http://www.jeffknupp.com/blog/2012/03/31/pythons-hardest-problem/ | |
| http://www.jeffknupp.com/blog/2013/06/30/pythons-hardest-problem-revisited/ | |
| This solution also doesn't find any use for the 5ms distributed cache: it would only be useful when there are multiple local machines. They were happy with this answer. The thing to note, if you were to implement such a cache, is that you might want to fork the thread so that this one can return the value immediately, whilst another can undergo the delay of writing the value. | |
| My services were not required. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| """ | |
| Nearmap.com Technical Test | |
| A python implementation of a test for interviewing technical candidates at nearmap.com. | |
| See https://github.com/izevaka/nearmap-test | |
| Generate 10 threads that resolve 50 values from a slow datastore as quickly as possible. | |
| """ | |
| __author__ = 'johnmee' | |
| import sys | |
| import threading | |
| import time | |
| import random | |
| import datasource | |
| # the remote datasource | |
| source = datasource.DataSource() | |
| # a local dictionary of the remote data values, or event objects indicating their arrival | |
| cache = {} # python dictionaries are thread-safe (whoot!) | |
| def worker(thread_id): | |
| """ | |
| Sequentially request 50 keys at random and print how long it took to get each value. | |
| Every pass initially assumes the cache has the key and the value is actually an event object/lock. | |
| So first it attempts to wait: | |
| - if it is an event then when it clears we know the cache has the real value | |
| - if the value is not an event, then we must have the value already | |
| - if the key is unknown then create an event, put it in the cache, fetch the value, | |
| and signal that we have it | |
| [1] assumes real values don't have an attribute named 'wait' | |
| [2] threads with the same unknown key race to this point and all hit the datasource for the same value at the same time | |
| - they will all succeed (assuming the datasource can cope with that). | |
| """ | |
| for idx in range(50): | |
| key = 'key{}'.format(random.randrange(10)) # pick a key at random | |
| timestamp = time.perf_counter() # stash a high precision timestamp | |
| try: # lets not waste time testing what it is, just | |
| cache[key].wait() # assume we're waiting for another thread to fetch it | |
| except AttributeError: # ok, it's got no 'wait' function | |
| pass # then it must be the value [1] | |
| except KeyError: # oh, we've not seen this key before | |
| event = threading.Event() # create an event for when we know what it is | |
| cache[key] = event # put it where other threads can find it [2] | |
| cache[key] = source.get_value(key) # fetch the value and put it in the local cache | |
| event.set() # and fire off to all who are waiting | |
| value = cache[key] # take value from the local cache | |
| # print a progress report | |
| wall_time = (time.perf_counter() - timestamp) * 1000 # milliseconds since the timestamp | |
| sys.stdout.write("[{:2}] Request '{}', response '{}', time: {:5.2f} ms\n".format( | |
| thread_id, key, value, wall_time)) | |
| if __name__ == '__main__': | |
| # spin up ten workers | |
| for idx in range(10): | |
| thread = threading.Thread(target=worker, args=(idx,)) | |
| thread.start() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import unittest | |
| import timeit | |
| import datasource | |
| class TestDatasource(unittest.TestCase): | |
| """ | |
| Test the datasource is initialised, reads and writes, and has a delay | |
| """ | |
| def setUp(self): | |
| self.datasource = datasource.DataSource() | |
| def test_init(self): | |
| """ | |
| Ensure datasource is initialised | |
| """ | |
| self.assertEqual(self.datasource.values['key0'], 'value0') | |
| self.assertEqual(10, len(self.datasource.values)) | |
| self.assertEqual(self.datasource.values['key9'], 'value9') | |
| def test_read(self): | |
| """ | |
| Ensure get_value returns the value for key, or None | |
| """ | |
| self.assertEqual('value0', self.datasource.get_value('key0')) | |
| self.assertEqual(None, self.datasource.get_value('supercalafragelistic')) | |
| def test_write(self): | |
| """ | |
| Ensure store_value routine saves to the dictionary | |
| """ | |
| self.datasource.store_value('key0', 'testvalue') | |
| self.assertEqual('testvalue', self.datasource.values['key0']) | |
| def test_delay(self): | |
| """ | |
| Ensure more than 50ms to read a value | |
| """ | |
| setup = 'import datasource; ds = datasource.DataSource()' | |
| statement = 'ds.get_value("key1")' | |
| seconds = timeit.timeit(setup=setup, stmt=statement, number=1 ) | |
| self.assertGreaterEqual(seconds, 0.05) | |
| class TestDistributedCache(unittest.TestCase): | |
| """ | |
| Test the cache is initially empty, has a delay, and reads/writes | |
| """ | |
| def setUp(self): | |
| self.cache = datasource.DistributedCacheStore() | |
| def test_init(self): | |
| self.assertEqual(len(self.cache.values), 0) | |
| def test_write_and_read(self): | |
| # put a value in the cache | |
| self.cache.store_value('testkey', 'testvalue') | |
| self.assertEqual(self.cache.values['testkey'], 'testvalue') | |
| # read it back | |
| self.assertEqual(self.cache.get_value('testkey'), 'testvalue') | |
| def test_keyerror(self): | |
| self.assertEqual(self.cache.get_value('qwerqwerqwer'), None) | |
| def test_delay(self): | |
| setup = 'import datasource; ds = datasource.DistributedCacheStore(); ds.values["testkey"] = "testvalue"' | |
| statement = 'ds.get_value("testkey")' | |
| seconds = timeit.timeit(setup=setup, stmt=statement, number=1 ) | |
| self.assertGreaterEqual(seconds, 0.005) | |
| if __name__ == '__main__': | |
| unittest.main() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| nearmap-py3)Johns-iMac:src johnmee$ time python3 program.py | |
| [ 0] Request 'key2', response 'value2', time: 50.59 ms | |
| [ 2] Request 'key9', response 'value9', time: 50.56 ms | |
| [ 4] Request 'key5', response 'value5', time: 50.39 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 50.08 ms | |
| [ 5] Request 'key9', response 'value9', time: 50.30 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key5', response 'value5', time: 50.13 ms | |
| [ 3] Request 'key8', response 'value8', time: 50.76 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 50.17 ms | |
| [ 9] Request 'key8', response 'value8', time: 50.12 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.30 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.01 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.46 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.02 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 51.63 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.58 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.98 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 51.19 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.01 ms | |
| [ 0] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 50.25 ms | |
| [ 8] Request 'key1', response 'value1', time: 50.11 ms | |
| [ 9] Request 'key0', response 'value0', time: 50.91 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 51.29 ms | |
| [ 5] Request 'key6', response 'value6', time: 50.76 ms | |
| [ 2] Request 'key0', response 'value0', time: 51.42 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.01 ms | |
| [ 3] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 51.39 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 51.04 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key3', response 'value3', time: 0.01 ms | |
| [ 4] Request 'key1', response 'value1', time: 50.20 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 5] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.01 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.01 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 3] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.01 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.01 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.01 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.01 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 4] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 51.28 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.01 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key4', response 'value4', time: 48.46 ms | |
| [ 7] Request 'key4', response 'value4', time: 50.58 ms | |
| [ 3] Request 'key4', response 'value4', time: 49.84 ms | |
| [ 2] Request 'key4', response 'value4', time: 49.12 ms | |
| [ 1] Request 'key4', response 'value4', time: 48.69 ms | |
| [ 6] Request 'key4', response 'value4', time: 48.65 ms | |
| [ 4] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 49.55 ms | |
| [ 2] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 50.98 ms | |
| [ 5] Request 'key4', response 'value4', time: 50.24 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 8] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.01 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.01 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.01 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 6] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 8] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 4] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 1] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 4] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 2] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 4] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 5] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 2] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| real 0m0.190s | |
| user 0m0.032s | |
| sys 0m0.013s | |
| (nearmap-py3)Johns-iMac:src johnmee$ time python3 program.py | |
| [ 2] Request 'key2', response 'value2', time: 50.99 ms | |
| [ 1] Request 'key8', response 'value8', time: 51.21 ms | |
| [ 0] Request 'key7', response 'value7', time: 51.33 ms | |
| [ 7] Request 'key9', response 'value9', time: 50.56 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 51.14 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.32 ms | |
| [ 8] Request 'key7', response 'value7', time: 50.71 ms | |
| [ 5] Request 'key6', response 'value6', time: 51.15 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 51.21 ms | |
| [ 9] Request 'key6', response 'value6', time: 50.94 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.78 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.22 ms | |
| [ 3] Request 'key5', response 'value5', time: 51.77 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.01 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 51.20 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.02 ms | |
| [ 0] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 51.28 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.01 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.01 ms | |
| [ 4] Request 'key4', response 'value4', time: 51.23 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.19 ms | |
| [ 2] Request 'key3', response 'value3', time: 50.36 ms | |
| [ 9] Request 'key3', response 'value3', time: 50.85 ms | |
| [ 5] Request 'key3', response 'value3', time: 50.67 ms | |
| [ 6] Request 'key4', response 'value4', time: 50.38 ms | |
| [ 8] Request 'key3', response 'value3', time: 51.20 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 50.25 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.02 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 51.36 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.01 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.01 ms | |
| [ 5] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.01 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 3] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.01 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.01 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.01 ms | |
| [ 5] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 3] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 2] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 1] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 4] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 5] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 2] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 3] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 7] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 9] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 4] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 5] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 3] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 7] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 7] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 3] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 8] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 7] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 8] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 0] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 2] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 4] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 3] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 7] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 6] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 4] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 8] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 0] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 7] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 4] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 3] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 6] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 2] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 7] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 3] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 0] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 7] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 4] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 3] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 6] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 7] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 5] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 3] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 0] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 3] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 0] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 1] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 9] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 7] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 6] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 5] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 3] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 0] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 7] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 6] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 5] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 3] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 0] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 4] Request 'key4', response 'value4', time: 0.00 ms | |
| [ 6] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 5] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 3] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 0] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 6] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 5] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 8] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 4] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 6] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 5] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 8] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 4] Request 'key8', response 'value8', time: 0.00 ms | |
| [ 1] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 4] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 8] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 2] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 8] Request 'key1', response 'value1', time: 0.00 ms | |
| [ 2] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 9] Request 'key2', response 'value2', time: 0.00 ms | |
| [ 1] Request 'key9', response 'value9', time: 0.00 ms | |
| [ 8] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 2] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 9] Request 'key6', response 'value6', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.00 ms | |
| [ 9] Request 'key7', response 'value7', time: 0.00 ms | |
| [ 1] Request 'key0', response 'value0', time: 0.00 ms | |
| [ 9] Request 'key5', response 'value5', time: 0.00 ms | |
| [ 1] Request 'key3', response 'value3', time: 0.00 ms | |
| real 0m0.141s | |
| user 0m0.032s | |
| sys 0m0.013s | |
| (nearmap-py3)Johns-iMac:src johnmee$ python -m unittest tests -v | |
| test_delay (tests.TestDatasource) ... ok | |
| test_init (tests.TestDatasource) ... ok | |
| test_read (tests.TestDatasource) ... ok | |
| test_write (tests.TestDatasource) ... ok | |
| test_delay (tests.TestDistributedCache) ... ok | |
| test_init (tests.TestDistributedCache) ... ok | |
| test_keyerror (tests.TestDistributedCache) ... ok | |
| test_write_and_read (tests.TestDistributedCache) ... ok | |
| ---------------------------------------------------------------------- | |
| Ran 8 tests in 0.228s | |
| OK | |
| (nearmap-py3)Johns-iMac:src johnmee$ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment