
Redis
南山行者
这个作者很懒,什么都没留下…
展开
-
Redis的使用
redis缓存服务器笔记redis是一个高性能的key-value存储系统,能够作为缓存框架和队列但是由于他是一个内存系统,这些数据还是要存储到数据库中的作为缓存框架:create/updae/delete---同时存到redis和数据库query--先从redis查,没有记录才从数据库查,并把从数据库查的结果也放一份到redis作为缓存队列:重要的数据:先存到原创 2015-09-14 08:57:13 · 847 阅读 · 1 评论 -
Redis和MySQL的结合方案
1,程序同时写Redis和MySQL,读Redis2,程序写MySQL, 使用Gearman调用MySQL的UDF,完成对Redis的写,读Redis3,程序写MySQL, 解析binlog,数据放入队列写Redis,读Redis4,程序写Redis,并将写放入MQ写MySQL,读Redis原创 2016-01-26 14:27:57 · 38831 阅读 · 5 评论 -
使用Redis的Java客户端Jedis
在实际的项目开发中,各种语言是使用Redis的客户端库来与Redis交互。针对Java语言,Redis官方推荐Jedis。Jedis提供了多种操作方式:单机单连接方式、单机连接池方式、多机分布式+连接池方式。预备jedis-2.5.2commons-pool2-2.2.jar使用单连接此方式仅建议用于开发环境做调试用。// 创建连接String h原创 2015-09-14 08:58:00 · 910 阅读 · 1 评论 -
Redis 主从复制 原理与用法
Redis 复制功能的几个重要方面:1. 一个Master可以有多个Slave;2. Redis使用异步复制。从2.8开始,Slave会周期性(每秒一次)发起一个Ack确认复制流(replication stream)被处理进度;3. 不仅主服务器可以有从服务器, 从服务器也可以有自己的从服务器, 多个从服务器之间可以构成一个图状结构;4. 复制在Master端是非阻塞模式的,这意原创 2015-12-31 17:31:32 · 13095 阅读 · 5 评论 -
Redis测试分析(pipeline模式)
测试环境Redis测试版本:2.2.12使用Java Jedis客户端进行测试测试数据量:50万, 超过2亿速度1) mset函数插入效率最高,插入Redis的速度达到20万条数据/秒。但是该函数所耗内存较高,对于我们实际应用一表每天2.4亿的数据量来说,需要消耗近32G内存;2) mset函数中当m值达到200以上时,插入速度接近饱和,因此实际应用中,应设定该值 >=原创 2016-04-19 18:08:01 · 1184 阅读 · 1 评论 -
【Java】利用Gearman进行Mysql到Redis的复制
前言诚如开篇文章所言,高效运维包括管理的专业化和技术的专业化。前两篇我们主要在说些管理相关的内容,本篇说一下技术专业化。希望读者朋友们能适应这个转换,谢谢。互联网早在几年前就已进入Web 2.0时代,对后台支撑能力的要求,提高了几十倍甚至几百倍。在这个演化过程中,缓存系统扮演了举足轻重的角色。运维进化到今天,已经不是重复造轮子的时代。所以,我们在架构优化和自动化转载 2016-01-05 09:51:52 · 7155 阅读 · 0 评论 -
Redis多实例启动脚本
1,编写脚本vi /etc/init.d/redis#!/bin/sh#chkconfig: 2345 10 90#description: Startup and stop script for RedisPATH=/usr/local/bin:/sbin:/usr/bin:/binREDISPORT_1=6380REDISPORT_2=6381REDISPORT_3=6原创 2016-05-09 14:18:24 · 3329 阅读 · 1 评论 -
Redis的安装
环境:centos 6.51,下载和安装下载[root@localhost]# wget http://download.redis.io/releases/redis-3.0.0.tar.gz解压[root@localhost]# tar zxvf redis-3.0.0.tar.gz进入文件夹[root@localhost]# cd zxvf redis-3.0原创 2015-09-13 23:41:20 · 749 阅读 · 1 评论 -
MySQL数据导入Redis
程序遍历MySQL然后插入Redis,效率极低。利用redis-cli命令行工具有一个批量插入模式,是专门为批量执行命令设计的。可以把Mysql查询的内容格式化成redis-cli可用数据格式。1, 根据表创建一个sql,将数据转换为redis可用的格式(1) 表结构(2) 参考Redis的hash命令结构 hmset hashname key name原创 2016-04-19 15:44:54 · 5221 阅读 · 2 评论 -
Redis Sentinel 机制与用法
概述 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)都没有实现自动进行主备切换,而Redis-sentinel本身也是一个独立运行的进程,它能监控多个master-slave集群,发现master宕机后能进行自懂切换, 被集成在redis2.4+转载 2015-12-31 16:43:58 · 920 阅读 · 1 评论 -
redis作为缓存的简单读写例子
当数据库的读写压力特别大,而读写分离也分担不了写的压力时,可以使用redis作为数据库的缓存,所有读写都在redis操作,大幅降低对数据库的负荷,同时redis的内存操作使效率提升明显,下面是一个读写redis的小例子,一个是读redis,一个是定时更新队列,特比简单,可以作为入门参考用。import java.util.List;import java.sql.Connect原创 2015-09-14 14:40:46 · 2518 阅读 · 1 评论 -
Redis 性能幻想与残酷现实
幻想要了解 Redis 的性能,我们先看看官方的基准性能测试数据,心里有个底。测试前提Redis version 2.4.2Using the TCP loopbackPayload size = 256 bytes测试结果SET: 198412.69/sGET: 198019.80/s这个数据刚一看觉得有点超出预期了,不过看了测试前提是规避了网络开销的转载 2016-01-04 17:34:11 · 981 阅读 · 0 评论 -
Redis 数据丢失及解决
Redis的数据回写机制Redis的数据回写机制分同步和异步两种,同步回写即SAVE命令,主进程直接向磁盘回写数据。在数据大的情况下会导致系统假死很长时间,所以一般不是推荐的。异步回写即BGSAVE命令,主进程fork后,复制自身并通过这个新的进程回写磁盘,回写结束后新进程自行关闭。由于这样做不需要主进程阻塞,系统不会假死,一般默认会采用这个方法。个人感觉方法2采用fork转载 2016-01-04 15:58:33 · 997 阅读 · 0 评论 -
Redis 配置文件详解
# redis 配置文件示例 # 当你需要为某个配置项指定内存大小的时候,必须要带上单位,# 通常的格式就是 1k 5gb 4m 等酱紫:## 1k => 1000 bytes# 1kb => 1024 bytes# 1m => 1000000 bytes# 1mb => 1024*1024 bytes# 1g => 1000000000 bytes# 1gb => 10转载 2016-01-04 16:46:07 · 799 阅读 · 0 评论 -
Redis Benchmark 性能测试
Redis Benchmark是Redis自带的测试工具,在redis-server同目录下,使用简单, 目前Redis的性能测试基本使用Redis Benchmark,没有发现其他的工具。一、使用方法:1,查看Redis Benchmark参数# redis-benchmark --help2,执行命令: 向redis服务器发送get命令,1000000个请原创 2016-01-04 14:59:55 · 1393 阅读 · 1 评论 -
利用Canal完成Mysql数据同步Redis
流程Canal的原理是模拟Slave向Master发送请求,Canal解析binlog,但不将解析结果持久化,而是保存在内存中,每次有客户端读取一次消息,就删除该消息。这里所说的客户端,就需要我们写一个连接Canal的程序,持续从Canal获取数据。步骤一、配置Canal参考https://github.com/alibaba/canal【mysql配置】1,配原创 2015-12-21 13:18:04 · 35508 阅读 · 7 评论