由于项目需要 所有的downserver node 都需要访问一个公共的布隆过滤器 也就是要做一个跨网络挺供的布隆过滤器服务中间产品。 同时要保证非常非常高的实时性 所以在这里 所以现在必须要做一个这样的中间服务系统。主要实现如下功能:
1 客户端远程传入一个需要存入读或者写入布隆过滤器的string.服务器端提供一个布隆过滤器服务 通过N个哈希函数映射到相应的bit位写入或者读出函数。
2 拥有丰富的配置 【具体看开源项目需要】
3 要拥有主从服务配置和持久化模式【这2种可以借鉴REDIS服务 可以算是一种简化的REDIS服务】
4 编写客户端(C)
5 提供批量化操作
操作:read/write/clear/countbit
read: 读一个或者多个value是否在这个布隆过滤器中
write: 把一个或者多个value写入到这个布隆过滤器中
clear: 清空这个布隆过滤器
countbit:查看这个布隆过滤器装了多少
作为子项目 可以提供一个嵌入式的项目【这是后话】
项目名称就是RBL