我有50个EC2实例都在web上爬行。现在他们在后台使用Redis来跟踪已经被抓取的URL;然而,ElastiCache变得成本高昂,我一直在遇到打开太多连接的问题。我一直在考虑将Bloom filter作为后端实现,但我不明白如何才能让所有50台服务器共享相同的bloom Filter。我不希望每个人都有自己独立的布隆过滤器,否则他们基本上都在做相同的任务。
发布于 2019-08-28 18:41:23
你仍然可以使用Redis来跟踪已经被集中处理/抓取的url,但是通过使用RedisBloom (redisbloom.io)的bloom filter来减少内存占用。RedisBloom是一个Redis Module,它扩展了Redis的几种概率数据结构。
备注:
https://stackoverflow.com/questions/34549442
复制相似问题