|
@@ -1,15 +1,25 @@
|
|
-import pickle
|
|
|
|
-import sys
|
|
|
|
|
|
+import threading
|
|
|
|
|
|
-from cuckoopy import CuckooFilter
|
|
|
|
-from pybloom_live import BloomFilter
|
|
|
|
|
|
|
|
-b = BloomFilter(capacity=100000, error_rate=0.0001)
|
|
|
|
-print(sys.getsizeof(pickle.dumps(b).decode("latin1")))
|
|
|
|
-print(sys.getsizeof(b))
|
|
|
|
|
|
+class AsyncKafka:
|
|
|
|
+ """异步请求模块
|
|
|
|
+ """
|
|
|
|
+ __session = None
|
|
|
|
+ __lock = threading.Lock()
|
|
|
|
|
|
-ck = CuckooFilter(capacity=100000, bucket_size=4, fingerprint_size=1)
|
|
|
|
-print(sys.getsizeof(pickle.dumps(ck).decode("latin1")))
|
|
|
|
-print(sys.getsizeof(ck))
|
|
|
|
|
|
+ @classmethod
|
|
|
|
+ async def __init_session(cls):
|
|
|
|
+ if not cls.__session:
|
|
|
|
+ with cls.__lock:
|
|
|
|
+ if not cls.__session:
|
|
|
|
+ pass
|
|
|
|
+ # producer = AIOKafkaProducer(……)
|
|
|
|
+ # await producer.start()
|
|
|
|
+ # cls.__session = producer
|
|
|
|
+ return cls.__session
|
|
|
|
|
|
-print(sys.getsizeof(bytes[10000]))
|
|
|
|
|
|
+ @classmethod
|
|
|
|
+ async def async_push(cls, payload):
|
|
|
|
+ if not cls.__session:
|
|
|
|
+ await cls.__init_session()
|
|
|
|
+ pass
|