`
huangz
  • 浏览: 320546 次
  • 性别: Icon_minigender_1
  • 来自: 广东-清远
社区版块
存档分类
最新评论
文章列表
用Redis的朋友们应该会发现,Redis的很多客户端都只是Redis命令的一个简单包装。  举个例子,在Redis的Python客户端redis-py中,设置一个String键的方法如下:    >>> from redis import Redis >>> r = Redis >>> r.set('key_name', 'value') 而要取得一个列表的所有元素,则要使用lrange命令:  >>> r.lrange('list', 0, -1)   这种操作方式有几个问题 ...
Redis命令参考中文版,翻译自Redis Command Reference。    所有命令已经翻译完毕!   阅读地址: http://redis.readthedocs.org/  欢迎反馈。 update 2011.10.23 本文档现在已经支持 Redis 2.4 版本了,enjoy!   update 2011.12.17 原本剩下的四个部分也已经译完,全文翻译完毕!
本文介绍从0开始,在Linux系统下,搭建一个Android开发环境的方法。 如果你是《Learning Android》这本书的读者,你也可以参考这篇文章,因为这篇文章是以书中的安装方法为基础而写的。(如果你不是也没有关系,反正步骤都是一样的 :)) 所谓Android的开发环境,主要是以下两个组件,Android Software Developer Kit(Android软件开发工具包)和Eclipse(编辑器,提供很多方便功能)两大块,下面分别介绍他们的安装方法。     安装Eclipse 要安装Eclipse,首先要安装Java Developer Kit(J ...
刚才用100kb的小文本文件,用1000次循环,在我的本本上,对redis(via redis-py),mongodb(via py-mongo)和ZODB(Zope的数据库,OODB,直接使用key-value模式,没有依附其他数据结构)进行了小规模写入和读取测试。 发现一些结果,有些有点意外 ...
注意:此文档已经过期,请移步到 http://huangz.iteye.com/blog/1123512 查看最新翻译。   SADD key member 将member元素加入到集合key当中。 如果member元素已经是该集合的成员,那SADD命令不执行任何操作。 假如key不存在,则创建一个只包含member元素作成员的集合。 当key不是集合类型时,返回一个错误。 时间复杂度:     O(1) 返回值:     如果添加元素成功,返回1。     如果元素已经是集合的成员,返回0。   redis> SADD bbs "v2e ...
Queue (队列),俗称FIFO结构,主要操作有两个,enqueue(入队)和dequeue(出队),数组实现还有一个succ(回绕)操作。   图里只画了链表结构的enqueue和dequeue,还有线性结构的succ。   代码只做了线性结构的,其他自己补完吧。   :)       #! /usr/bin/env python3 # coding:utf-8 class QueueException(Exception): pass class QueueOverFlow(QueueException): pass class QueueUnderFl ...
Stack (栈)   操作限制在push和pop(最多还有top)的linear list(线性表)。   暂时只有链表实现,数组实现也不难,自己写写看吧~     #! /usr/bin/env python3 # coding:utf-8 class StackError(Exception): pass class StackOverFlow(StackError): pass class StackUnderFlow(StackError): pass class Node: def __init__(self, data, ...
跟朋友逛公园,归途路上,我说起最近为数据库技术选型的烦恼。我:“现在光是数据库都有十多种,真TM难以抉择阿。”友:“怎么会有那么多?”我:”写软件的人喜欢重复造轮子。“友:“那选一个最好的阿。“我:”烦恼的就是没有最好的。比如其中一个,速度快,但是功能稍弱;另一个则是功能强,但是速度没有前一个快。“友:“那真是挺累人的,有其他办法不?“我:“唯有自己写一个了,还得保证它比现有的工具都好才行——而且这事还不算完。“友:“咋的?“我:”因为等我造好这个工具之后,肯定有人会跳出来,说我的软件虽然满足了要求A和要求B,但是没有满足要求C,而这个人恰好需要满足要求A、B、C的工具,于是。。。“友:”?“我 ...
single linked list(单链表)   主要的操作是iter(遍历)、insert(插入)、find(查找)和delete(删除)。   以上操作的时间复杂度都是O(N)。     #! /usr/bin/env python3 # coding:utf-8 class SingleLinkedListError(Exception): pass class SingleLinkedListOperationError(SingleLinkedListError): pass class Node: def __init__(sel ...
TAoCP第一卷,2.2.2 和 2.2.3 节的内容。   图示是链接/顺序储存在内存中的表现。      
虽然比计划慢了一些,但redis commands reference的工作仍在进行中。   redis命令参考的翻译原本只是作为博文发表,但最近我受到启发,也打算将译文通过RST(SPHNIX)格式或者PDF格式,作为一个单独的文件发布到其他地方。 因为原本作为博文发表,所以没有留底稿,所以在格式转换的过程中遇到了不少麻烦,于是我干脆就重审一遍翻译和代码,将各个部分分开,并分别更新博文版本和RST版本,时间耗费了一些,但是质量比第一次翻译应该是有所提高。 翻译的工作量并不算太大,但我本人还有其他工作在忙,所以就得一点一点做,打算是先把已经翻译好的几个重审并转换到RST,之后我就 ...
注意:此文档已经过期,请移步到 http://huangz.iteye.com/blog/1123512 查看最新翻译。   HASH部分 HDEL key field     删除key储存的哈希表(hash)中的指定域(field)。        复杂度:            O(1)        返回值:            若域存在并被成功删除,返回1。             若key不存在或域不存在,返回0。 redis> HSET hash_name jack "Jack Sparrow" (integer) 1 r ...
注意:此文档已经过期,请移步到 http://huangz.iteye.com/blog/1123512 查看最新翻译。   String部分 APPEND key value     如果key已经存在并且是一个字符串,APPEND命令将value追加到key原来的值之后。     如果key不存在,APPEND就简单地将指定key设为value,就像SET key value一样。     复杂度:         O(1)         平摊复杂度O(1)是建立于要追加(appended)的value不大(small)的情况下,不管原字符串有多大。因为Re ...
注意:此文档已经过期,请移步到 http://huangz.iteye.com/blog/1123512 查看最新翻译。   BLPOP key [key ...] timeout     BLPOP是一个阻塞列表的弹出原语。     它是LPOP的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将被BLPOP命令阻塞。     当给定多个key参数时,按传入key的先后检查列表,弹出第一个非空列表的头部元素。         复杂度:             O(1)         返回值:             假如在指定时间内没有任何元素被弹出,则返回一个n ...
为了用APUE的源码折腾了一下,网上很多方法都不能用,或者有小问题,特此记录。   注意,不同环境的编译提示有所不同,如果你的环境和我的相似,那么应该没问题。   环境   Linux mypad 2.6.38-ARCH #1 SMP PREEMPT Tue May 3 06:04:40 UTC 2011 i686 Intel(R) Core(TM)2 Duo CPU T6570 @ 2.10GHz GenuineIntel GNU/Linux   确保你已经安装了gcc和gawk。   步骤   1.到www.apuebook.com下载源码   2 ...
Global site tag (gtag.js) - Google Analytics