Skip to content

Commit

Permalink
BloomFilter去重默认使用同一个key,其它类型去重默认使用redis_key
Browse files Browse the repository at this point in the history
  • Loading branch information
Boris-code committed Nov 7, 2023
1 parent a9a93dd commit 7946309
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 9 deletions.
2 changes: 1 addition & 1 deletion feapder/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.9.0-beta1
1.9.0-beta2
15 changes: 12 additions & 3 deletions feapder/buffer/item_buffer.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,18 @@ def __init__(self, redis_key, task_table=None):
self._mysql_pipeline = None

if setting.ITEM_FILTER_ENABLE and not self.__class__.dedup:
self.__class__.dedup = Dedup(
to_md5=False, **setting.ITEM_FILTER_SETTING
)
if setting.ITEM_FILTER_SETTING.get(
"filter_type"
) == Dedup.BloomFilter or setting.ITEM_FILTER_SETTING.get("name"):
self.__class__.dedup = Dedup(
to_md5=False, **setting.ITEM_FILTER_SETTING
)
else:
self.__class__.dedup = Dedup(
to_md5=False,
name=self._redis_key,
**setting.ITEM_FILTER_SETTING,
)

# 导出重试的次数
self.export_retry_times = 0
Expand Down
12 changes: 7 additions & 5 deletions feapder/buffer/request_buffer.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,16 @@ def __init__(self, db=None, dedup_name: str = None):
self._db = db or MemoryDB()

if not self.__class__.dedup and setting.REQUEST_FILTER_ENABLE:
if dedup_name:
if setting.REQUEST_FILTER_SETTING.get(
"filter_type"
) == Dedup.BloomFilter or setting.REQUEST_FILTER_SETTING.get("name"):
self.__class__.dedup = Dedup(
name=dedup_name, to_md5=False, **setting.REQUEST_FILTER_SETTING
) # 默认使用内存去重
to_md5=False, **setting.REQUEST_FILTER_SETTING
)
else:
self.__class__.dedup = Dedup(
to_md5=False, **setting.REQUEST_FILTER_SETTING
) # 默认使用内存去重
to_md5=False, name=dedup_name, **setting.REQUEST_FILTER_SETTING
)

def is_exist_request(self, request):
if (
Expand Down

0 comments on commit 7946309

Please sign in to comment.