- 浏览: 431685 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (269)
- 原创 (7)
- Java (51)
- Java Concurrency (2)
- IDE (16)
- Linux (46)
- Database (23)
- NoSQL (35)
- Web服务器 (23)
- Log日志 (11)
- HTTP (11)
- HTML (2)
- XML (1)
- Test (7)
- Mina (0)
- Amoeba (4)
- Cobar (1)
- 序列化 (2)
- Python (5)
- PHP (1)
- Socket通信 (1)
- Network (3)
- Struts (2)
- Web前端 (10)
- Maven (6)
- SVN (15)
- Json (1)
- XMPP (2)
- Go (1)
- Other (4)
- 未整理 (5)
最新评论
-
u012374672:
[color=darkred][/color][flash=2 ...
Mongo的ORM框架的学习Morphia(annotations) -
b_l_east:
很有问题啊
利用redis的transaction功能,实现分布式下加锁
#! /usr/bin/env python
#coding=utf-8
import redis
print redis.__file__
# 连接,可选不同数据库
r = redis.Redis(host='10.0.1.7', port=6379, db=1)
# -------------------------------------------
# 看信息
info = r.info()
for key in info:
print "%s: %s" % (key, info[key])
# 查数据库大小
print '\ndbsize: %s' % r.dbsize()
# 看连接
print "ping %s" % r.ping()
# 选数据库
#r.select(2)
# 移动数据去2数据库
#r.move('a',2)
# 其他
#r.save('a') # 存数据
#r.lastsave('a') # 取最后一次save时间
#r.flush() #刷新
#r.shutdown() #关闭所有客户端,停掉所有服务,退出服务器
#
#--------------------------------------------
# 它有四种类型:string(key,val)、list(序列)、set(集合)、zset(有序集合,多了一个顺序属性)
# 不知道你用的哪种类型?
# print r.get_type('a') #可以告诉你
# -------------------------------------------
# string操作
print '-'*20
# 塞数据
r['c1'] = 'bar'
#或者
r.set('c2','bar')
#这里有个 getset属性,如果为Tr 可以在存新数据时将上次存储内容同时搞出来
print 'getset:',r.getset('c2','jj')
#如果你想设置一个递增的整数 每执行一次它自加1:
print 'incr:',r.incr('a')
#如果你想设置一个递减的整数 please:
print 'decr:',r.decr('a')
# 取数据
print 'r['']:',r['c1']
#或者
print 'get:',r.get('a')
#或者 同时取一批
print 'mget:',r.mget('c1','c2')
#或者 同时取一批 它们的名字(key)很像 而恰好你又不想输全部
print 'keys:',r.keys('c*')
#又或者 你只想随机取一个:
print 'randomkey:',r.randomkey()
# 查看一个数据有没有 有 1 无0
print 'existes:',r.exists('a')
# 删数据 1是删除成功 0和None是没这个东西
print 'delete:',r.delete('cc')
# 哦对了 它是支持批量操作的
print 'delete:',r.delete('c1','c2')
# 其他
r.rename('a','c3') #呃.改名
r.expire('c3',10) #让数据10秒后过期 说实话我不太明白么意思
r.ttl('c3') #看剩余过期时间 不存在返回-1
#--------------------------------
# 序列(list)操作
print '-'*20
# 它是两头通的
# 塞入
r.push('b','gg')
r.push('b','hh')
# head 属性控制是不是从另一头塞
r.push('b','ee')
# 看长度
print 'list len:',r.llen('b')
# 列出一批出来
print 'list lrange:',r.lrange('b',start=0,end=-1)
# 取出一位
print 'list index 0:',r.lindex('b',0)
# 修剪列表
#若start 大于end,则将这个list清空
print 'list ltrim :',r.ltrim('b',start=0,end=3) #只留 从0到3四位
# 排序
# 这可是个大工程
#--------------------------------
# 集合(set)操作
# 塞数据
r.sadd('s', 'a')
# 判断一个set长度为多少 不存在为0
r.scard('s')
# 判断set中一个对象是否存在
r.sismember('s','a')
# 求交集
r.sadd('s2','a')
r.sinter('s1','s2')
#求交集并将结果赋值
r.sinterstore('s3','s1','s2')
# 看一个set对象
r.smembers('s3')
# 求并集
r.sunion('s1','s2')
# 阿 我想聪明的你已经猜到了
#求并集 并将结果返回
r.sunionstore('ss','s1','s2','s3')
# 求不同
# 在s1中有,但在s2和s3中都没有的数
r.sdiff('s1','s2','s3')
r.sdiffstore('s4','s1','s2')# 这个你懂的
# 取个随机数
r.srandmember('s1')
#-------------------------------------
#zset 有序set
#'zadd', 'zcard', 'zincr', 'zrange', 'zrangebyscore', 'zrem','zscore'
# 分别对应
#添加, 数量, 自加1,取数据,按照积分(范围)取数据,删除,取积分
# 我靠 你玩死我了 redis!
# 今天在实验中,我尝试插入一条zset类型数据:
r1.zset(u'litao','book1',3)
# 插入成功
# 我继续插入
r1.zset(u'litao','book2',5)
#成功了
import time
t1 = time.time()
import redis
r = redis.Redis("localhost")
for i in xrange(1):
a=r.set(i, i)
b=r.get(i)
print b
r.lpush('book','book1')
r.lpush('book','book2')
print 'list llen:',r.llen('book')
print 'list lrange:',r.lrange('book',start=0,end=-1)
print 'list index:',r.lindex('book',1)
r.sadd('litao','song1')
r.sadd('litao','song2')
print 'set scard:',r.scard('litao')
print 'set sismember:',r.sismember('litao','song1')
r.sadd('jingjie','song1')
print 'sinter:',r.sinter('litao','jingjie')
print 'set smembers:',r.smembers('litao')
r.zadd(u'zset','litao',2)
r.zadd(u'zset','jingjie',1)
print 'zrange:',r.zrange('zset',0,-1)
print 'zrangebyscore:',r.zrangebyscore('zset',1,1)
发表评论
-
mongodb 地理位置处理
2016-05-16 13:39 1430我只记录我用到的部分,没有完整分析mongodb对地理位置 ... -
Ubuntu下安装selenium、pytester、tesseract
2015-03-22 13:13 23630. Ubuntu 14.10已经安装 ... -
Redis配置文件redis.conf
2014-11-14 14:10 1879# Redis configuration file ex ... -
Redis高可用部署及监控
2014-11-12 13:25 1111一、 Re ... -
JCS官方文档的简单笔记,仅供自己参考
2014-09-26 20:08 7851. 基本配置 jcs.default=DCjcs.de ... -
JCS基本配置
2014-09-26 19:39 9511、默认的内存缓存 ... -
NoSQL解决方案比较(MongoDB vs Redis, Tokyo Cabinet, and Berkeley DB)
2013-09-30 14:20 1350NoSQL解决方案比较 NoSQL Solution: E ... -
python中的map,filter,reduce,lambda
2012-12-07 15:45 1652Python 内置了一些非常 ... -
python lambda
2012-12-07 15:07 1152转自:http://www.cnblogs.com/wanpy ... -
morphia与spring的整合
2012-12-07 15:06 1492转自: http://www.blogjava.net/wat ... -
Mongo的ORM框架的学习Morphia(十五)Morphia+spring整合
2012-12-07 15:06 1666转自:http://topmanopensource.itey ... -
Mongo的ORM框架的学习Morphia(十二) morphia的Query和Update
2012-12-07 15:06 1890转自:http://topmanopensource.itey ... -
Mongo的ORM框架的学习Morphia(十) morphia应用
2012-12-05 14:47 1471转自:http://topmanopensource.itey ... -
Mongo的ORM框架的学习Morphia(九) morphia简单使用
2012-12-05 14:44 1389转自 http://topmanopensource.itey ... -
Mongo的ORM框架的学习Morphia(八) morphia数据库访问接口
2012-12-05 14:35 2027转自:http://topmanopensource.itey ... -
Mongo的ORM框架的学习Morphia(annotations)
2012-12-05 14:33 2553一:@Entity的使用 @Entity ... -
Instagram的Redis实践(内存占用优化)
2012-11-30 10:43 1212转自:http://blog.nosqlfan.com/htm ... -
SQL 和Mongo 对比图表
2012-11-28 14:54 2217参看官方说明: http://www.mongodb ... -
MongoDB 入门指南、示例
2012-11-23 10:38 861转自:http://www.cnblogs.com/hoojo ... -
mongodb中使用MapReduce
2012-11-23 10:12 1220MapReduce函数的用法如下: db.users.ma ...
相关推荐
以下是一些关键概念和使用方法: 1. **模型定义**:在`python_redis_orm`中,你需要定义一个继承自`BaseModel`的类,类的属性对应Redis中的键,类型可以是基本的Python数据类型,如字符串、整数等。例如: ```...
在这个小示例中,我们将探讨如何使用Python操作Redis,包括数据的读取、写入、推送以及删除等基本操作。 首先,确保已经安装了`redis-py`库,如果没有,可以通过以下命令安装: ```bash pip install redis ``` 接...
要使用Redis与Python进行交互,我们需要利用`redis`这个Python库。这个库使得我们可以方便地通过Python代码来连接、操作Redis服务器。 **1. 安装redis库** 在Python中使用Redis,首先需要安装`redis`库。可以通过...
2. 查询Redis实例:使用`DescribeInstances`方法获取实例列表,包括实例状态、配置等详细信息。 3. 修改实例配置:如调整存储容量、变更实例类型,可以调用`ModifyInstanceSpec`等方法。 4. 备份与恢复:`Create...
主要介绍了redis的安装与使用,和python3使用redis;主要介绍了redis的安装与使用,和python3使用redis
在Python中,当需要频繁地与Redis数据库进行交互时,使用连接池(Connection Pool)能有效地管理和复用连接,避免了频繁创建和销毁连接带来的性能开销。本篇文章将详细介绍如何在Python中利用`redis`库实现一个基于...
资源分类:Python库 所属语言:Python 使用前提:需要解压 资源全名:bbog_sg_python_redis_lib-0.0.1-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
总的来说,`redis-py-cluster`是Python开发者在处理Redis集群时的重要工具,它提供了方便、健壮的接口,使得在Python应用中使用Redis集群变得容易和可靠。通过学习和掌握这个库,你可以更好地利用Redis集群的潜力,...
本教程将详细介绍如何使用Python的`redis-py`库封装一个名为`RedisHelper`的类,以便更方便地操作Redis。 首先,我们需要安装`redis-py`库。通过Python的包管理器pip,可以轻松完成安装: ```bash pip install ...
Python操作Redis的方法主要涵盖连接Redis、管理连接池以及对Redis中的数据类型进行各种操作。本文将详细介绍这些内容,特别是字符串(Strings)的操作。 首先,连接Redis是操作的基础。Python通过`redis`库来与Redis...
在"python-redis.rar"这个压缩包中,可能包含了关于如何使用Python的redis模块来实现Redis的基本操作以及高级功能如列表、队列和分布式锁的示例代码和文档。 1. Redis基本操作:Python的redis库提供了丰富的API,...
python-redis-lock 多个redis客户端访问同一个redis服务端,控制并发。 github:https://pypi.org/project/python-redis-lock/ 在使用这个库之前,需要安装如下: pip install python-redis-lock 使用锁的示例: ...
根据提供的文件信息,...通过以上实训内容的学习,我们可以了解到 Redis 在实际开发中的多种应用场景及其命令的具体使用方法。这些基础知识对于掌握 Redis 的核心功能非常有帮助,也是后续深入学习 Redis 的重要基础。
总之,`redis-py-cluster`为Python开发者提供了一种高效且易于使用的接口,以便在Python应用程序中充分利用Redis集群的强大功能。无论是在小型项目还是大型分布式系统中,它都是一个值得信赖的工具。
介绍了redis的安装方法,概念,以及python中redis的使用方法
本教程将深入讲解如何使用Python的Redis库来存储和检索字典。 首先,Redis的数据类型包括字符串(String)、哈希表(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。在本例中,我们关注的是哈希表...
本项目涉及到的是使用Python的redis库来操作Redis服务,下面将详细介绍如何使用Python与Redis进行交互以及相关知识点。 首先,让我们了解下Redis的基本概念。Redis是一个开源的,支持网络的,内存中的数据结构存储...
`redis-py`使得在Python程序中操作Redis变得非常方便,下面我们来详细探讨其主要功能和使用方法。 **1. 安装与连接** 首先,要使用`redis-py`,你需要通过`pip`来安装这个库: ```bash pip install redis ``` ...
标题中的“python使用pipeline批量读写redis的方法”指的是在Python编程环境下,利用Redis数据库的pipeline功能进行高效的数据批量读取和写入操作。这在处理大量数据时能显著提高性能,减少网络通信的延迟。 首先,...