`
daogangtang
  • 浏览: 62929 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Bamboo的custom操作API

 
阅读更多
为了在封装性与灵活性之间做出权衡,Bamboo设计了一套完整的的自定义k-v存储接口,用户在特定情况下,可以方便地使用它们。

先列出API吧,再讲解一下设计和使用。

API method说明
Model_name:setCustom(key, val, st)创建一个custom key,将val值写入此key中。val可以为string, list, st只能取nil, 'string', 'list', 'set', 'zset' 中的一个
Model_name:getCustom(key)获取custom key的所有内容
Model_name:delCustom(key)删除此custom key
Model_name:updateCustom(key, val)将val值更新到custom key中去,注意,是覆盖关系
Model_name:removeCustomMember(key, val)删除custom key中的val元素
Model_name:addCustomMember(key, val)添加一个member到custom key中去
Model_name:numCustom(key)测量custom key的值的长度


注意:
1. 虽然说custom支持string, list, set, zset四种存储结构,但每种结构最基本的单元还是一个字符串,在设计的时候要考虑。
2. 尽量不要使用纯数字作为key参数,名字尽量取有意义一点的好。

在内部,custom key是被限制在Model_name下面的。也就是说,不存在独立的custom key,总是需要依附某一个model而存在。比如说,
User模型,使用
User:setCustom('test', 'have a test')
后,在redis中存储的key是 User:custom:test, 值为'have a test'

如果实在找不到要用到的custom key与哪一个模型有关联,就用Model模型吧。
执行
Model:setCustom('test', 'have a test')
后,在redis中存储的key是 Model:custom:test, 值为'have a test'


将custom key限制在某一个模型名字空间下面,是为了防止滥用custom key,尽量少用为好。

custom API可用于记录一些模型相关的属性在数据库中。

分享到:
评论

相关推荐

    bamboo-ci:使用 Atlassian 的 Bamboo CI Server 提供的 API 的简单库

    竹-CI 使用 Atlassian 的 Bamboo CI 服务器上提供的 API 的简单库。用法 var Bamboo = require('bamboo-ci');var bamboo = new Bamboo('http://bamboo.mycompany.com', 'my', 'Password!');bamboo.getServerStatus()...

    持续集成bamboo

    **持续集成Bamboo详解** Bamboo是Atlassian公司推出的一款强大的持续集成和持续部署工具,它在软件开发流程中扮演着至关重要的角色。持续集成(Continuous Integration, CI)是一种开发实践,要求开发人员频繁地将...

    PyBambooHR:Bamboo HR的Python API

    这是Bamboo HR的非官方Python API。 到目前为止,它专注于管理员工信息,但是您几乎可以使用一个小python来做任何您想做的事情。 该库使用Python和的库进行测试。 非常感谢你们两个优秀的项目。 使用这个库非常...

    PyPI 官网下载 | bamboo-pipeline-3.6.3.tar.gz

    标题中的"PyPI 官网下载 | bamboo-pipeline-3.6.3.tar.gz"指出这是一个从Python Package Index(PyPI)官方站点获取的软件包,名为“bamboo-pipeline”。这个软件包的版本是3.6.3,并且是以tar.gz格式压缩的。在...

    swift-Bamboo用一行代码实现自动布局和手动布局

    Swift中的Bamboo库是为了简化iOS、macOS等平台上的界面布局工作而设计的,它提供了简洁的API,使得开发者可以快速地实现自动布局(Auto Layout)和手动布局。在本篇文章中,我们将深入探讨Bamboo库的核心概念、如何...

    Python库 | bamboo_ipa_sync-3.0.0-py2.py3-none-any.whl

    3. 使用API:库通常提供了一系列的函数和类,你可以根据需求调用这些API来实现IP地址的同步操作。具体API的使用方法需要查看库的官方文档或通过`help(bamboo_ipa_sync)`获取。 4. 配置与设置:根据项目需求,可能...

    bamboo数位板驱动

    bamboo数位板驱动

    Bamboo Paper安卓apk

    透过 Bamboo Paper,笔记本在 Windows 8,Android 与 iOS 平台上可以和朋友同事分享,或汇出到各式云端服务及社交媒体 5.触控笔 为求最佳效果及体验,使用 Bamboo Paper 时请搭配 Wacom 触控笔使用。请上 bambo

    bamboo CTL-660 驱动 中文官方版

    Bamboo系列产品Windows驱动PenTablet_5.3.3-2 版本号:5.3.3-2 适应操作系统:Windows XP, Windows Vista, Windows 7, Windows 8 发布日期:2013/12/18 文件大小:37.1 MB 更多说明: 改进对Winodws 8.1的...

    BAMBOO-2-7-PDF.pdf

    Bamboo 2.7版本在原有基础上进行了功能优化与增强,本章节将对Bamboo的基础概念、安装配置及基本操作进行概述,帮助初学者快速上手。 #### 用户指南:全面掌握Bamboo操作 ##### 开始使用:熟悉Bamboo仪表板 - **...

    HAproxy自动配置Bamboo.zip

    Bamboo 是一个 Web 守护进程可自动的配置 HAproxy 用于发布在 Apache Mesos 和 Marathon 的 Web 服务。界面:StatsD Monitoring 标签:Bamboo

    bamboo 470 mac版驱动

    bamboo 470 mac版驱动 适合mac的bamboo 470 mac版驱动,解决画笔卡顿的问题

    bamboo cth661驱动

    bamboo cth661的驱动 装上驱动后有压感

    bamboo-github-status:Atlassian Bamboo的插件,可向GitHub状态API报告构建结果

    Atlassian Bamboo的插件,可向GitHub状态API报告构建结果 安装此插件后,您的Bamboo计划将开始自动报告。 尽管您可以从“杂项”选项卡按计划禁用插件,但没有配置。 默认为启用。 GitHub Enterprise用户可以在...

    bamboo-payment-icons.sketch

    icons,bamboo-payment,icons 一些支付相关的icon,

    bamboo_crack

    安装官方包,并申请到试用License之后,停止bamboo服务,将文件复制到atlassian/bamboo/atlassian-bamboo/WEB-INF/lib 覆盖同名文件,然后重启bamboo.仅供学习使用, 商业使用请购买授权

    Bamboo

    这种字体格式广泛应用于各种操作系统,包括Windows和macOS。 总的来说,"Bamboo" 压缩包提供的内容是一个字体样本(Bamboo1.GIF)和字体文件(Bamboo.TTF),让用户可以了解并安装这款以竹子为灵感的字体。通过这个...

    Bamboo Package.unitypackage

    Asset Store中付费竹子模型,价值27刀,需要的各位可以下载 https://assetstore.unity.com/packages/3d/vegetation/speedtree/bamboo-package-32273

    spark-rdd-APi

    标题:“Spark RDD API”说明了本文档将专注于Apache Spark中弹性分布式数据集(RDD)的API。RDD是Spark的核心概念,它是一个容错的、并行的数据结构,使得用户能够处理大数据集。本文档将基于Scala语言中的RDD实现...

    Bamboo系列_CTH670驱动

    Bamboo CTH670的驱动盘内容包括了必要的驱动文件和配置信息,使得操作系统能够识别并有效地管理这款数位板。安装驱动后,用户可以享受到流畅的笔迹跟踪、自定义快捷键以及多点触摸等功能。 压缩包中的文件有: 1. *...

Global site tag (gtag.js) - Google Analytics