Store/Get

Store/get operations

Once the DHT is formed, all participants can dht.store key-value pairs in the DHT and dht.get them by key:

# first node: store a key-value pair for 600 seconds
store_ok = dht.store('my_key', ('i', 'love', 'bees'),
                     expiration_time=get_dht_time() + 600)

# second node: get the value stored by the first node
value, expiration = dht2.get('my_key', latest=True)
assert value == ('i', 'love', 'bees')

As you can see, each value in a mesh DHT is associated with an expiration time, computed current get_dht_time() with some offset. This expiration time is used to clean up old data and resolve write conflicts: DHT nodes always prefer values with a higher expiration time and may delete any value past its expiration.

Last updated