From e8c9abb944d1a2a9cc0022f0b71f3e05e3da098a Mon Sep 17 00:00:00 2001 From: Victor Shyba Date: Mon, 25 Feb 2019 20:34:58 -0300 Subject: [PATCH] add LRU to KademliaPeer creation --- lbrynet/dht/peer.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lbrynet/dht/peer.py b/lbrynet/dht/peer.py index d6d586e2c..9c8176eb5 100644 --- a/lbrynet/dht/peer.py +++ b/lbrynet/dht/peer.py @@ -3,6 +3,8 @@ import asyncio import logging import ipaddress from binascii import hexlify +from functools import lru_cache + from lbrynet.dht import constants from lbrynet.dht.serialization.datagram import make_compact_address, make_compact_ip, decode_compact_address @@ -76,6 +78,7 @@ class PeerManager: self._node_id_mapping[(address, udp_port)] = node_id self._node_id_reverse_mapping[node_id] = (address, udp_port) + @lru_cache(maxsize=400) def get_kademlia_peer(self, node_id: bytes, address: str, udp_port: int) -> 'KademliaPeer': return KademliaPeer(self._loop, address, node_id, udp_port)