请注意,Zanblog并不支持低于IE8的浏览器,为了获得最佳效果,请下载最新的浏览器,推荐下载 Chrome

redis modules扩展模块的开发使用

DB,redis 518 views
上下文:       Redis 4.0 的RC终于出来了, 看了redis官方及antirez的博客都有提到4.0的各种新功能,对我来说是相当有吸引力的 。  估计有人好奇现在不是才redis 3 .x么, 怎么直接干到redis 4.0 大版本了,据antirez说, redis 3.x 主要是集群功能, redis 4.0 是个全新的大跃进 ( 当...
阅读全文 0

redis modules扩展模块的开发使用

12-08 518 views

上下文:       Redis 4.0 的RC终于出来了, 看了redis官方及antirez的博客都有提到4.0的各种新功能,对我来说是相当有吸引力的 。&n...
阅读全文 0

技术分享 《大话redis设计实现》

python,技术分享 3,024 views
        这次又给朋友公司 (Naver) 做了一次技术分享,主题是《大话redis设计实现》 ,  里面的内容来自 学习《redis设计与实现》 和 阅读redis源码的心得。   话说, 我用redis的历史也有些时间了, 应该有4、5 年了。  运维方面从最开始单机扩展成主从,从单主从到proxy方案,现在...
阅读全文 1

技术分享 《大话redis设计实现》

6-11 3,024 views

        这次又给朋友公司 (Naver) 做了一次技术分享,主题是《大话redis设计实现》 ,  里面的内容来自 学习《redis设计与实现》...
阅读全文 1

gevent通过socket补丁实现redis.py非阻塞

python 2,565 views
如题,gevent是使用socket补丁把redis.py改成异步非阻塞化. 异步非阻塞是个有点虚的话题,在python下使用gevent确实解决了io阻塞的问题。 业务场景需要python gevent redis.py的组合,因redis.py涉及到网络io的交互,果断的在开源社区找找gevent有关redis的模块。   该文章写的有些乱,欢迎来喷 ! 另外文...
阅读全文 0

gevent通过socket补丁实现redis.py非阻塞

5-23 2,565 views

如题,gevent是使用socket补丁把redis.py改成异步非阻塞化. 异步非阻塞是个有点虚的话题,在python下使用gevent确实解决了io阻塞的问题。 业务场景需要pyth...
阅读全文 0

给redis-py提交pull request引起的思考

python 3,167 views
起因是这样的,昨天突然发现以前用redis python的时候,从来没注意过他在多线程,多进程下fd复用的情况,直接都是公用一个连接对象。  对比了多个好项目代码,貌似大家对mysql,mongodb十分的注意,都尽量不要让他有socket fd共享的情况,而对于redis的使用很是粗暴,直接共享。  那么话说回来...
阅读全文 3

给redis-py提交pull request引起的思考

5-17 3,167 views

起因是这样的,昨天突然发现以前用redis python的时候,从来没注意过他在多线程,多进程下fd复用的情况,直接都是公用一个连接对象。  对比了多...
阅读全文 3

探索mysql和redis主从复制的实现原理

DB,运维 4,733 views
前几天跟同事聊了下常见数据库的主从复制是怎么个原理。 另外对于redis的主从数据同步颇有些心得,就跟大家唠唠。 该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请到原文地址查看更新. http://xiaorui.cc/?p=3332 Mysql主从同步: Mysql master slave是最常见的主从模式,原理...
阅读全文 4

探索mysql和redis主从复制的实现原理

5-15 4,733 views

前几天跟同事聊了下常见数据库的主从复制是怎么个原理。 另外对于redis的主从数据同步颇有些心得,就跟大家唠唠。 该文章写的有些乱,欢迎来喷...
阅读全文 4

详解python调用redis lua内嵌脚本的高级用法

python 4,829 views
Lua 脚本功能是 Reids 2.6 版本开始提供的高级功能, 我们可以通过redis内嵌的 Lua 环境的进行搞复杂的需求。 使用内置的lua脚本环境可以解决Redis长久以来不能高效地处理 CAS (check-and-set)命令的缺点, 并且可以通过组合使用多个命令, 轻松实现以前很难实现或者不能高效实现的模式。 该文章写的有些乱,...
阅读全文 5

详解python调用redis lua内嵌脚本的高级用法

3-27 4,829 views

Lua 脚本功能是 Reids 2.6 版本开始提供的高级功能, 我们可以通过redis内嵌的 Lua 环境的进行搞复杂的需求。 使用内置的lua脚本环境可以解决Redis长久以来...
阅读全文 5

Golang使用redigo实现redis的分布式锁

Golang 4,214 views
有些分布式场景会有分布式锁的需求,可以为了原子操作,也可能为了性能的原因,不管是分布式锁市面是有不少解决方法的,比如etcd、consul、zookeeper… 初次之外redis这样的nosql也是可以实现分布式锁的。  python党喜欢用redis、etcd、consul来搞。   java这帮人更喜欢用zookeeper来实现分布式锁,zoo...
阅读全文 0

Golang使用redigo实现redis的分布式锁

3-23 4,214 views

有些分布式场景会有分布式锁的需求,可以为了原子操作,也可能为了性能的原因,不管是分布式锁市面是有不少解决方法的,比如etcd、consul、zookeeper…...
阅读全文 0

实现python redis客户端的的封装定制化

python 4,471 views
感叹自己拿来这么大的激情呀,前段时间对分布式的raft感兴趣,这两天又着迷于golang。 听起来是不是有装逼的成分?  勿喷 … 该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请到原文地址查看更新。 http://xiaorui.cc/?p=2990 今天一直在封闭式开发,针对电商接入SuperSpide适配...
阅读全文 0

实现python redis客户端的的封装定制化

3-17 4,471 views

感叹自己拿来这么大的激情呀,前段时间对分布式的raft感兴趣,这两天又着迷于golang。 听起来是不是有装逼的成分?  勿喷 … 该文章写...
阅读全文 0

使用python实现redis的ack(commit)确认机制

python 4,933 views
题外,因为抢火车票的原因,颇有些年味的感觉。值得庆幸的是成功的购票。  正题,跟朋友聊起现在的消息队列,虽然现在的消息队列服务端繁多,但因为业务的原因,往往就那几个选择。 要安全和功能? rabbitmq ,但他的性能确实一般。 zeromq性能是好,但他更偏向于tcp组件。kafka适合大吞吐的消息队列。 据...
阅读全文 0

使用python实现redis的ack(commit)确认机制

12-11 4,933 views

题外,因为抢火车票的原因,颇有些年味的感觉。值得庆幸的是成功的购票。  正题,跟朋友聊起现在的消息队列,虽然现在的消息队列服务端繁多,...
阅读全文 0

使用redis实现分布式的函数调用限频

python 8,050 views
前言,什么是函数限制频率? 控频的应用场景又是什么?  在python下控频可以理解为函数的调用频率,原因可能因为多方面. 频率一般是一定时间内,调用的次数,如果超过我们规定的次数,或者报错,或者堵塞接口。 那他的应用场景又是什么?  比如同事写了一个支持socks级别的tcp代理,因为写的很粗糙,我们这边用...
阅读全文 0

使用redis实现分布式的函数调用限频

11-27 8,050 views

前言,什么是函数限制频率? 控频的应用场景又是什么?  在python下控频可以理解为函数的调用频率,原因可能因为多方面. 频率一般是一定时间内,调用的次...
阅读全文 0

关于使用python来实现redis和mysql的连接池

python 4,648 views
有朋友问我连接池是怎么实现的,我曾经写过一个python mysql的连接池库,他的原理就是利用python queue或则是list实现的。具体点就是一开始构造实例化对象的时候,预先在一个队列里放入指定数目的链接对象。  那么这样的话,每次我们要调用链接对象的时候,他会从链接队列里pop一个,如果这个链接对象不...
阅读全文 0

关于使用python来实现redis和mysql的连接池

11-18 4,648 views

有朋友问我连接池是怎么实现的,我曾经写过一个python mysql的连接池库,他的原理就是利用python queue或则是list实现的。具体点就是一开始构造实例化对象...
阅读全文 0

针对redis的HyperLogLog做基数统计性能测试

DB 5,489 views
Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,他不仅能做去重处理,更主要的是在海量的元素下,占用的内存空间要比redis集合要少的多,我后面有测试的结果…… 在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个不同元素的基 数。这和计算基数时,元素...
阅读全文 1

针对redis的HyperLogLog做基数统计性能测试

7-07 5,489 views

Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,他不仅能做去重处理,更主要的是在海量的元素下,占用的内存空间要比redis集合要少的多...
阅读全文 1

使用redis-trib fix命令修复redis cluster节点

DB,运维 5,827 views
Blog: http://xiaorui.cc/?p=1497 遇到个问题…. check节点的时候,会遇到下面的问题….. >>> Check for open slots… >>> Check slots coverage… [ERR] Not all 16384 slots are covered by nodes. oot@ubuntu:~# redis-cli -c -p 7000 127.0.0.1:7000> set a a (erro...
阅读全文 1

使用redis-trib fix命令修复redis cluster节点

5-19 5,827 views

Blog: http://xiaorui.cc/?p=1497 遇到个问题…. check节点的时候,会遇到下面的问题….. >>> Check for open slots… ...
阅读全文 1

解决python操作redis cluster集群时遇到的问题

DB,python 7,960 views
今天在测试redis-py-cluster的时候,遇到一个奇怪的问题…   一开始以为是python的redis cluster遇到的bug … …   在作者的issue里也看到了别人也同样遇到我这样的问题… …    提示的错误是这样的… 原文链接是在 http://xiaorui.cc/?p=1478   ...
阅读全文 1

解决python操作redis cluster集群时遇到的问题

5-17 7,960 views

今天在测试redis-py-cluster的时候,遇到一个奇怪的问题…   一开始以为是python的redis cluster遇到的bug … …   在作者的issu...
阅读全文 1

定制Dockerfile实现redis cluster的docker化部署及集群管理

docker,运维 7,151 views
   我们知道redis cluster的部署是很麻烦的,如果在一台服务器启动多个redis实例的话,需要一个个的cp配置文件到指定的目录,然后一个个的修改端口及相关的信息。。。以前经常这么干。 如果采用docker后,我们可以更加方便的启动redis, 我们只需要传递端口参数,在dockerfile里定制一个entrypoint脚本,脚本...
阅读全文 2

定制Dockerfile实现redis cluster的docker化部署及集群管理

5-17 7,151 views

   我们知道redis cluster的部署是很麻烦的,如果在一台服务器启动多个redis实例的话,需要一个个的cp配置文件到指定的目录,然后一个个的修改端...
阅读全文 2

通过redis-trib.rb脚本构建并增删改查redis cluster集群

DB,运维 7,775 views
首先是创建redis cluster集群.   redis-trib.rb命令我们见过吧?  咱们安装搭建redis cluster集群的时候,必用的一条命令…..  关于redis-trib操作的文章,原文链接是  http://xiaorui.cc/?p=1458    http://xiaorui.cc redis-trib.rb 是官方出品的,是ruby开...
阅读全文 0

通过redis-trib.rb脚本构建并增删改查redis cluster集群

5-16 7,775 views

首先是创建redis cluster集群.   redis-trib.rb命令我们见过吧?  咱们安装搭建redis cluster集群的时候,必用的一条命令…..  ...
阅读全文 0

python使用redis-py-cluster操作redis cluster集群

python 7,907 views
redis3.0的集群已经搭建完了,那么开始用python来操作redis cluster集群试试,但是默认的redis模块已经是不能在使用了。  会提示下面的错误….. 关于python redis-py-cluster操作redis cluster集群原文地址 , http://xiaorui.cc/2015/05/16/python%E4%BD%BF%E7%94%A8redis-py-cluster%E6%93%8D%E4%...
阅读全文 0

python使用redis-py-cluster操作redis cluster集群

5-16 7,907 views

redis3.0的集群已经搭建完了,那么开始用python来操作redis cluster集群试试,但是默认的redis模块已经是不能在使用了。  会提示下面的错误….. ...
阅读全文 0

ubuntu安装配置redis3.0的cluster集群模式

DB,运维 7,910 views
 今天,天气不错….  出去逛了下,在咖啡店看了会美女….  休闲时,看到携程的一朋友在github关注了一个python redis cluster集群模块….  立马警醒,不能在看妹子了….  人家大周末也学习,我也要学习….    标注下,关于redis cluster配置安装...
阅读全文 4

ubuntu安装配置redis3.0的cluster集群模式

5-16 7,910 views

 今天,天气不错….  出去逛了下,在咖啡店看了会美女….  休闲时,看到携程的一朋友在github关注了一个python redis cluster集...
阅读全文 4

python使用redis事务时遇到multi、watch和锁的问题

python 6,641 views
前段时间也读了下python的redis库的源码,看的时候也有些跳跃和粗糙,但是基本大概的过了下…. …. 越来越发现redis很是不简单…    有时间分享下对于redis库的一些理解。  redis本身应对外部请求的是单任务的,也是多线程安全的,这个大家都应该知道的, 所以才会经常有人...
阅读全文 0

python使用redis事务时遇到multi、watch和锁的问题

5-09 6,641 views

前段时间也读了下python的redis库的源码,看的时候也有些跳跃和粗糙,但是基本大概的过了下…. …. 越来越发现redis很是不简单…  ...
阅读全文 0

python zookeeper解决redis做分布式锁带来的坑

python 5,308 views
我自己写了一个redis分布式锁的模块,已经推到pypi里面了。 但是带来了一个问题是,如果客户端自己因为内存泄露被系统内核给oom干掉了。 在分布式的架构下,一堆的节点去获取锁是徒劳的,只能等我们先前redis的TTL自动消逝….当然我自己也扩展了一个追加时间戳的方式,来判断他的进程在不在,但是可能...
阅读全文 0

python zookeeper解决redis做分布式锁带来的坑

4-09 5,308 views

我自己写了一个redis分布式锁的模块,已经推到pypi里面了。 但是带来了一个问题是,如果客户端自己因为内存泄露被系统内核给oom干掉了。 在分布...
阅读全文 0

python rq任务队列是如何实现优先级队列 [上]

python 5,878 views
这段时间跟同事聊了些任务优先级队列的话题,正好我们这把大量的celery抛弃,开始用rq来做任务队列,因为celery太大,所以改造起来甚是恶心到爆,还不如选择一个简单干练的python rq。 xiaorui.cc xiaorui.cc xiaorui.cc xiaorui.cc 微信的抓取api,我是用django写的,任务队列也是用django-rq,...
阅读全文 4

python rq任务队列是如何实现优先级队列 [上]

4-01 5,878 views

这段时间跟同事聊了些任务优先级队列的话题,正好我们这把大量的celery抛弃,开始用rq来做任务队列,因为celery太大,所以改造起来甚是恶心到爆,还不如选...
阅读全文 4