如何实现广告弹窗触达频率的控制?
为了实现这样的小的效果,花费了1G的宝贵的Redis内存空间,显然是划不来的。这个时候,你突然想到用户的唯一标识符,是一个从0到1个亿递增的整数。一天一次弹窗对应一个01二进制值。抬起头算了算,一个用户uid为1bit位,1亿用户,大概:100000000b/8/1024/1024=11MB。到这里,需要1个G的内存的功能现在只需要11MB就能存储下来。以为到使用bitmap解决问题就完了么?在方案二中的分配一大片的bitmap基础上,将要保存的uid或key通过若干个哈希函数映射到不同的bit上保存。当然坏处就是会牺牲掉少量的准确性。没有完美的技术方案,只有最合适的技术方案。到这里,如何控制频率的方法介绍完毕。希望对你有所帮助。
下载地址
用户评论

