基于Redisbitmap实现开关配置功能

php中文网
发布: 2016-06-07 16:12:42
原创
1545人浏览过

bitmap api SETBIT key offset value 对key所储存的字符串值,设置或清除指定偏移量上的位(bit)。 位的设置或清除取决于value参数,可以是0也可以是1。 当key不存在时,自动生成一个新的字符串值。 字符串会进行伸展(grown)以确保它可以将value保存在指定的

<span style="font-family: Arial, Verdana, sans-serif; font-size: 12px;">bitmap api</span>
登录后复制
SETBIT key offset value 对key所储存的字符串值,设置或清除指定偏移量上的位(bit)。 位的设置或清除取决于value参数,可以是0也可以是1。 当key不存在时,自动生成一个新的字符串值。 字符串会进行伸展(grown)以确保它可以将value保存在指定的偏移量上。 当字符串值进行伸展时,空白位置以0填充。 offset参数必须大于或等于0,小于2^32(bit映射被限制在512MB之内)。 返回值: 指定偏移量原来储存的位。 Warning: 对使用大的offset的SETBIT操作来说,内存分配可能造成Redis服务器被阻塞。 Warning: 当生成一个很长的字符串时,Redis 需要分配内存空间,该操作有时候可能会 造成服务器阻塞(block)。在2010年的Macbook Pro上,设置偏移量为536870911(512MB内 存分配),耗费约300毫秒,设置偏移量为134217728(128MB内存分配),耗费约80毫秒, 设置偏移量33554432(32MB内存分配),耗费约30毫秒,设置偏移量为8388608(8MB内存分配), 耗费约8毫秒。 GETBIT key offset 对key 所储存的字符串值,获取指定偏移量上的位(bit)。 当offset比字符串值的长度大,或者key不存在时,返回0。 返回值:字符串值指定偏移量上的位(bit)。

需求场景

在很多业务场景中,我们都需要针对很多功能实现配置,比如以下场景:

  1. 新增某个功能, 希望有开关可以控制是否开启该功能;
  2. 游戏上线某个新功能,希望引导用户去打开该功能,需要诱导用户,比如打开该功能,可以获取XX奖励,此时需要标记位来记录领奖记录;

    代码实现

    https://github.com/billfeller/billfeller.github.io/blob/master/code/IBit.php

    国洋商务通
    国洋商务通

    Gyb2b V1.01免费版可终身使用,是一款功能强大的B2B电子商务应用软件。该软件不仅更新和修改了V1.0相关功能,更是采用了目前互联网上最流行的LAMP组合(Linux+Apache+Mysql+PHP)开发完成,模板技术实现了界面与代码的有效分离,用户可以快速地在此基础上编译模板;提供B2B电子商务应用最常见的求购、供应、商品、公司库、行业资讯、商圈、资信认证、在线交易、交易评分、留言、搜

    国洋商务通 0
    查看详情 国洋商务通
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号