Redis数据库安装使用说明

Redis数据库安装使用说明
Redis数据库安装使用说明

Redis数据库安装使用说明

Redis数据库安装使用说明

Windows 安装说明

下载

文件

配置

启动

CentOS 安装说明

下载

安装

配置

启动

关闭

redis-py

检测

安装

说明

官方网站

Windows 安装说明

Windows下启动请使用Administrator账户

下载

请点击这里选择需要下载的版本

Windows版本只是为了开发使用,正式环境请选择在Linux下安装使用文件

程序说明

redis-benchmark.exe Redis性能测试工具

redis-check-aof.exe数据修复

redis-check-dump.exe检查导出工具

redis-cli.exe Redis客户端

redis-server.exe Redis服务器

redis.windows.conf配置文件

配置

配置文件为 redis.windows.conf

主要修改以下几个参数:

内网运行,建议不设置认证密码

port6379#端口,默认为6379

logfile"redis.log"#日志文件

dbfilename dump.rdb #数据库文件

maxheap1024000000#修改为该值即可

dir ./ #路径(当前目录下)

启动

进入控制台,并跳转到reids-server.exe目录下,输入以下命令即可:

redis-server redis.windows.conf

设置快捷启动

在redis程序文件夹下创建StartRedisDB.bat文件,并写入如下内容

redis-server redis.windows.conf

pause

保存即可,下次可以直接点击运行Redis服务端

CentOS 安装说明

如果安装使用过,请使用你自己的方法;如果没有安装使用过,请根据我的步骤安装

下载

选择相应的版本链接,以下为redis-3.0.1版本

# wget http://download.redis.io/releases/redis-3.0.1.tar.gz 安装

# tar xzf redis-3.0.1.tar.gz

# cd redis-3.0.1

# make

编译后的二进制文件在src目录下,可以把他们复制到其他目录下:

# mkdir -p /home/redis

# cd ./src

# cp reids-* /home/redis

# cd /home/redis

redis就在/home/redis目录下

配置

配置文件在解压的目录下redis.conf

把配置文件放在/home/redis目录下(home/soft/redis-3.0.1为解压目录):

# cp /home/soft/redis-3.0.1 redis.conf /home/redis

主要修改以下几个参数

daemonize yes#yes 设置为后台运行方式

port6379#默认端口

logfile redis.log #日志文件

dbfilename dump.rdb #数据文件

dir ./ #当前目录下

启动

输入以下命令启动redis数据库:

# /home/redis/redis-server /home/redis/redis.conf 查看是否运行

# ps -elf | grep redis

若有reids进程,则说明数据库启动成功

关闭

关闭redis输入如下命令:

# /home/redis/redis-cli -h 127.0.0.1 -p 6379 shutdown

redis-py

检测

[root@localhost redis]# python

Python2.7.8 (default, May112015, 06:11:32)

>>> import redis

Traceback (most recent call last):

File"", line 1, in

ImportError:No module named redis

>>>

>>>

如果显示如上信息,则需要安装redis模块;如果没有信息输出,则说明已经安装了redis模块

安装

通过pip安装python的redis模块 pip安装方法

pip install redis

检测

[root@localhost soft]# python

Python2.7.8 (default, May112015, 06:11:32)

>>> import redis

>>>

若没有信息输入,则安装成功

说明

python 操作redis简要说明

import redis

g_redis_db = None

def Redis():

return g_redis_db

def Redis_ConnectDB(redis_host, redis_port, redis_db): try:

global g_redis_db

g_redis_db = redis.Redis(host=redis_host,

port=redis_port, db=redis_db)

pass

except:

print'connect redis db failed'

pass

bConnected = g_redis_db.ping()

if bConnected == False:

print'connect redis db failed'

else:

print'connect redis db successful'

pass

def Redis_zadd(tableName, itemName, itemValue):

Redis().zadd(tableName, itemName, itemValue) pass

def Redis_incr(tableName, itemName, incrValue):

Redis().zincrby(tableName, itemName, incrValue) pass

def Redis_decr(tableName, itemName, incrValue):

Redis().zincrby(tableName, itemName, incrValue*-1) pass

def Redis_delete(tableName, itemName):

Redis().zrem(tableName, itemName)

pass

def Redis_GetRank(tableName, topNumber=-1):

info = Redis().zrange(tableName, 0, topNumber, True, True)

return info

def Redis_DisconnectRedisDB():

Redis().shutdown()

print'redis db shutdown'

def Redis_Ping():

bConnected = g_redis_db.ping()

return bConnected

if __name__ == '__main__':

import random

#连接数据库

DBRedis.Redis_ConnectDB('127.0.0.1', 6379, 0) #添加数据

i = 0;

while i >= 100:

c_item = '%s:%s:%d' % ('accountID', 'nickName', i) value = random.randrange(-1000, 1000)

DBRedis.Redis_zadd('rank_gold', c_item, value)

i = i + 1

#打印前50名数据

print DBRedis.Redis_GetRank('rank_gold', 49)

DBRedis.Redis_DisconnectRedisDB()

pass

pip安装方法

# wget https://bootstrap.pypa.io/get-pip.py

# python get-pip.py

href="https://https://www.360docs.net/doc/3910176396.html,/shard/s21/sh/b24b23b9-49c8-463a-80e5-157c99d80810/6e89dffac9065f088fc9dc445b3b12b0"

Redis集群研究

Redis Sentinel数据库M-S配置(Redis的分片与复制集技术) 1.Redis Sentinel介绍 Redis Sentinel是Redis官方提供的集群管理工具,主要有三大功能: 监控,能持续监控Redis的主从实例是否正常工作; 通知,当被监控的Redis实例出问题时,能通过API通知系统管理员或其他程序;自动故障恢复,如果主实例无法正常工作,Sentinel将启动故障恢复机制把一个从实例提升为主实例,其他的从实例将会被重新配置到新的主实例,且应用程序会得到一个更换新地址的通知。 Redis Sentinel是一个分布式系统,可以部署多个Sentinel实例来监控同一组Redis实例,它们通过Gossip协议来确定一个主实例宕机,通过 Agreement协议来执行故障恢复和配置变更,一般在生产环境中部署多个实例来提高系统可用性,只要有一个Sentinel实例运行正常,就能保证被监控的Redis实例运行正常(类似Zookeeper,通过多个Zookeeper来提高系统可用性); 2.Redis HA方案 HA的关键在于避免单点故障及故障恢复,在Redis Cluster未发布之前,Redis 一般以主/从方式部署(这里讨论的应用从实例主要用于备份,主实例提供读写,有不少应用是读写分离的,读写操作需要取不同的Redis实例,该方案也可用于此种应用,原理都是相通的,区别在于数据操作层如何封装),该方式要实现HA主要有如下几种方案: 1).keepalived:通过keepalived的虚拟IP,提供主从的统一访问,在主出现问题时,通过keepalived运行脚本将从提升为主,待主恢复后先同步后自动变为主,该方案的好处是主从切换后,应用程序不需要知道(因为访问的虚拟IP 不变),坏处是引入keepalived增加部署复杂性; 2).zookeeper:通过zookeeper来监控主从实例,维护最新有效的IP,应用通过zookeeper取得IP,对Redis进行访问; 3).sentinel:通过Sentinel监控主从实例,自动进行故障恢复,该方案有个缺陷:因为主从实例地址(IP&PORT)是不同的,当故障发生进行主从切换后,应用程序无法知道新地址,故在Jedis2.2.2中新增了对Sentinel的支持,应用通过 redis.clients.jedis.JedisSentinelPool.getResource()取得的Jedis 实例会及时更新到新的主实例地址。 笔者所在的公司先使用了方案1一段时间后,发现keepalived在有些情况下会导致数据丢失,keepalived通过shell脚本进行主从切换,配置复杂,而且keepalived成为新的单点,后来选用了方案3,使用Redis官方解决方案;(方

SpringBoot企业级开发教程教学大纲

《Spring Boot企业级开发教程》课程教学大纲 (课程英文名称) 课程编号: XXXX 学分:5学分 学时:60学时(其中:讲课学时:38 上机学时:22) 先修课程:Java基础案例教程、Java Web程序设计任务教程、 Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)适用专业:信息及其计算机相关专业 开课部门:计算机系 一、课程的性质与目标 《Spring Boot企业级开发教程》是面向计算机相关专业开设的一门专业的Java 应用开发课程,主要讲解了当前主流的Spring Boot框架以及与第三方技术整合开发实战内容。通过本课程的学习,学生能够理解并掌握Spring Boot 框架的基础知识,同时能够掌握Spring Boot与常用第三方技术的整合实现实际开发中的业务需求,包括实现Web开发、数据访问、缓存管理、安全管理、消息服务、任务管理等。 二、课程的主要内容及基本要求 第1章 Spring Boot开发入门(4学时) [知识点] ?Spring Boot概述 ?环境准备 ?使用Maven方式构建Spring Boot项目 ?使用Spring Initializr方式构建Spring Boot项目 ?单元测试 ?热部署 ?Spring Boot依赖管理

?Spring Boot自动配置 ?Spring Boot执行流程 [重点] ?使用Maven方式构建Spring Boot项目 ?使用Spring Initializr方式构建Spring Boot项目 ?单元测试 ?Spring Boot依赖管理 ?Spring Boot自动配置 ?Spring Boot执行流程 [难点] ?Spring Boot自动配置 ?Spring Boot执行流程 [基本要求] ?了解Spring Boot的发展和优点 ?掌握Spring Boot项目的构建 ?掌握Spring Boot的单元测试和热部署 ?熟悉Spring Boot的自动化配置原理 ?熟悉Spring Boot的执行流程 [实践与练习] 建议完成相关测试题,并安排上机,重点考核如何编写Spring Boot入门程序,并参考教材进行Spring Boot源码分析。 第2章 Spring Boot核心配置与注解(6学时) [知识点] ?application.properties配置文件 ?application.yaml配置文件 ?使用注解@ConfigurationProperties和@Value注入属性 ?两种注解对比分析 ?使用@PropertySource加载配置文件 ?使用@ImportResource加载XML配置文件 ?使用@Configuration编写自定义配置类 ?使用Profile文件进行多环境配置 ?使用@Profile注解进行多环境配置 ?随机值设置以及参数间引用 [重点] ?application.properties配置文件

redis中文手册

Skip to comments (0) 排头兵 Evangelist PHP / Blogger Live in Shanghai Work@https://www.360docs.net/doc/3910176396.html, Email@shjuto(at)https://www.360docs.net/doc/3910176396.html, More 国内的开放平台就是一个玩笑 分享会-高性能nosql数据库redis 盛大在线跨站攻击分享会 Bambook 知识和文化传承的载体 加入盛大在线 efish 在 国内的开放平台就是一个玩笑 上的评论 最弱网 在 加入盛大在线 上的评论 大大的小蜗牛 在 国内的开放平台就是一个玩笑 上的评论 youstar 在 国内的开放平台就是一个玩笑 上的评论 wss8848 在 国内的开放平台就是一个玩笑 上的评论 CSS FreeBSD jquery memcached MySQL nginx NOSQL PHP SEO技术 SEO新闻 人在江湖 团队管理 我看互联网 碎言碎语 网站设计 最近文章 最近评论 分类目录

我看互联网 碎言碎语 网站设计 网站运营 网络营销 文章索引模板2010年十一月 2010年九月 2010年八月 2010年七月 2010年六月 2010年五月 2010年三月 2010年二月 2010年一月 2009年十二月 2009年六月 2009年五月 2009年四月 2009年三月 2009年一月 2008年十二月 2008年十一月 2008年十月 2008年九月 2008年八月 2008年七月 2008年六月 2008年五月 2008年四月 2008年三月 2007年九月 2007年八月 2007年四月 2006年七月 链接 Jackzou omiga PHPPAN Reco Lee Show Framework suppermen Tino Web开发 一亩三分地 五四陈科学院 伊人莫公 哥学社 恋上E人 某人的栖息地 武林 精神鸦片

redis千万级数据性能测试

Redis千万级的数据量的性能测试 发布时间:2011-04-06 16:21:31 来源:未知评论:点击:1609 次【字号:】 从图中可以猜测到还会有Redis 2.2.1 的测试,相同的测试环境,1K的数据量,使用ServiceStack.Redis 客户端进行如下测试:1) Set操作2) Get操作3) Del操作每一套测试分别使用三个配置进行测试:1) 绿色线条的是开启Dump方式的持久化,5分钟持久化一次2) 从图中可以猜测到还会有Redis 2.2.1 的测试,相同的测试环境,1K的数据量,使用ServiceStack.Redis客户端进行如下测试: 1) Set操作 2) Get操作 3) Del操作 每一套测试分别使用三个配置进行测试: 1) 绿色线条的是开启Dump方式的持久化,5分钟持久化一次 2) 蓝色线条是开启AOF方式的持久化,每秒写入磁盘一次 3) 红色线条是关闭任何的持久化方式 对于每一个配置都使用相同的其他配置: 1) 开启VM 最大内存10GB(128字节一页)之后开始换出,VM空间160GB 2) 最大使用内存15GB,确保在Dump的时候有足够的剩余内存 3) 开启压缩,没有配置主从 现在来看一下测试结果: 从这个图中可以看出: 1) 对于没有持久化的方式,读写都在数据量达到800万的时候,性能下降几倍,此时正好是达到内存10G,Redis开始换出到磁盘的时候。并且从那以后再也没办法重新振作起来,性能比Mongodb还要差很多。

2) 对于AOF持久化的方式,总体性能并不会比不带持久化方式差太多,都是在到了千万数据量,内存占满之后读的性能只有几百。 3) 对于Dump持久化方式,读写性能波动都比较大,可能在那段时候正在Dump也有关系,并且在达到了1400万数据量之后,读写性能贴底了。在Dump的时候,不会进行换出,而且所有修改的数据还是创建的新页,内存占用比平时高不少,超过了15GB。而且Dump还会压缩,占用了大量的CPU。也就是说,在那个时候内存、磁盘和CPU的压力都接近极限,性能不差才怪。 总结一下: 1) Redis其实只适合作为缓存,而不是数据库或是存储。它的持久化方式适用于救救急啥的,不太适合当作一个普通功能来用。对于这个版本的Redis,不建议使用任何的持久化方式。否则到时候可能会死的比较难看。说白了,期望Redis是memcached的升级版,带有各种数据结构,但是不要期望Redis来和Mongodb/Kt等来比。 2) 对于VM其实也是不建议开启,虽然开启VM可以让Redis保存比内存更多的数据,但是如果冷热数据不是很明显的话性能会非常差(我的测试都是随机查询Key,冷热不明显)。当然,对于冷热明显的情况下可以设置200% - 400%的内存作为VM空间,也不建议设置10倍的内存空间作为VM(像我的配置一样)。 3) ServiceStack.Redis客户端好像有几个Bug,首先RedisTypedClient的Dispose居然没有实现,应该是要调用client.Dispose(),其次RedisNativeClient的Info属性不是每次都获取最新值的,第三PooledRedisClientManager的WritePoolIndex和ReadPoolIndex 只看到加没看到减的地方,也不知道这是干啥的,其实每次都取第一个不是Active的Client 就可以了,PooledRedisClientManager也没有把超时使用的Active的Client强制回收(避免使用的时候忘记Dispose占用过多的连接)。有关这几点,我会尝试联系ServiceStack.Redis 的作者。

Redis面试题及复习资料

Redis 是一个基于内存的高性能key-value数据库。(有空再补充,有理解错误或不足欢迎指正) Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过10万次读写操作,是已知性能最快的Key-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1GB,不像memcached只能保存1MB的数据,因此Redis可以用来实现很多有用的功能,比方说用他的List来做FIFO双向链表,实现一个轻量级的高性能消息队列服务,用他的Set可以做高性能的tag 系统等等。 另外Redis也可以对存入的Key-Value设置expire时间,因此也可以被当作一个功能加强版的memcached来用。 Redis的主要缺点是数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。 Redis支持的数据类型 Redis通过Key-Value的单值不同类型来区分, 以下是支持的类型: Strings Lists Sets 求交集、并集 Sorted Set hashes

为什么redis需要把所有数据放到内存中? Redis为了达到最快的读写速度将数据都读到内存中,并通过异步的方式将数据写入磁盘。所以redis具有快速和数据持久化的特征。 如果不将数据放在内存中,磁盘I/O速度为严重影响redis的性能。在内存越来越便宜的今天,redis将会越来越受欢迎。 如果设置了最大使用的内存,则数据已有记录数达到内存限值后不能继续插入新值。 Redis是单进程单线程的 redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销 虚拟内存 当你的key很小而value很大时,使用VM的效果会比较好.因为这样节约的内存比较大. 当你的key不小时,可以考虑使用一些非常方法将很大的key变成很大的value,比如你可以考虑将key,value组合成一个新的value. vm-max-threads这个参数,可以设置访问swap文件的线程数,设置最好不要超过机器的核数,如果设置为0,那么所有对swap文件的操作都是串行的. 可能会造成比较长时间的延迟,但是对数据完整性有很好的保证. 自己测试的时候发现用虚拟内存性能也不错。如果数据量很大,可以考虑分布式或者其他数据库 分布式 redis支持主从的模式。原则:Master会将数据同步到slave,而slave不会将数据同步到master。Slave启动时会连接master来同步数据。 这是一个典型的分布式读写分离模型。我们可以利用master来插入数据,slave 提供检索服务。这样可以有效减少单个机器的并发访问数量。

Redis数据库安装使用说明

Redis数据库安装使用说明 Redis数据库安装使用说明 Windows 安装说明 下载 文件 配置 启动 CentOS 安装说明 下载 安装 配置 启动 关闭 redis-py 检测 安装 说明 官方网站 Windows 安装说明 Windows下启动请使用Administrator账户 下载

请点击这里选择需要下载的版本 Windows版本只是为了开发使用,正式环境请选择在Linux下安装使用文件 程序说明 redis-benchmark.exe Redis性能测试工具 redis-check-aof.exe数据修复 redis-check-dump.exe检查导出工具 redis-cli.exe Redis客户端 redis-server.exe Redis服务器 redis.windows.conf配置文件 配置 配置文件为 redis.windows.conf 主要修改以下几个参数: 内网运行,建议不设置认证密码 port6379#端口,默认为6379 logfile"redis.log"#日志文件

dbfilename dump.rdb #数据库文件 maxheap1024000000#修改为该值即可 dir ./ #路径(当前目录下) 启动 进入控制台,并跳转到reids-server.exe目录下,输入以下命令即可: redis-server redis.windows.conf 设置快捷启动 在redis程序文件夹下创建StartRedisDB.bat文件,并写入如下内容 redis-server redis.windows.conf pause 保存即可,下次可以直接点击运行Redis服务端 CentOS 安装说明 如果安装使用过,请使用你自己的方法;如果没有安装使用过,请根据我的步骤安装

B. VisiSet 入门手册

VisiSet中文操作手册_V1.0 Matrix 2000 目录 一、调试工具及界面介绍............................................................................................................. - 2 - 1、打开调试软件V ISI S ET (2) 2、连接V ISI S ET与读码器 (2) 3、调试读码器 (3) 四、参数调试 ............................................................................................................................... - 6 -附录1. 读码器固件升级方法

一、调试工具及界面介绍 1、打开调试软件VisiSet 正确安装读码器后,打开VisiSet软件。有两种方法: <1> 点击桌面上的快捷方式,如下图: <2> 从开始菜单启动,点击开始->程序->Datalogic->VisiSet->VisiSet.exe。 2、连接VisiSet与读码器 打开VisiSet后,程序窗口如下图所示: 点击工具栏中的Options按钮,会出现下面的窗口: 此窗口用来设置读码器与电脑通讯所用的串口的设置。例如,选择使用哪一个串口,波特率是多少,是否有奇偶校验等。把这些设置与电脑串口的设置改为一样。然后点击Save

关闭此窗口。出厂时的设定为:115200-8-N-1 如下图,点击Connect : 大约2秒钟,VisiSet 与读码器连接成功,连上后的状态如下图: 左边的一列按钮为调试工具,用于调试读码器;右边为数据显示窗口,可以显示读到的条码的内容。 3、 调试读码器 VisiSet 与读码器成功连接后,我们就可以对读码器进行调试。 测试工具 数据显示窗口

Redis中统计各种数据大小的方法

如果MySQL 数据库比较大的话,我们很容易就能查出是哪些表占用的空间;不过如果Redis 内存比较大的话,我们就不太容易查出是哪些(种)键占用的空间了。 有一些工具能够提供必要的帮助,比如redis-rdb-tools 可以直接分析RDB 文件来生成报告,可惜它不能百分百实现我的需求,而我也不想在它的基础上二次开发。实际上开发一个专用工具非常简单,利用SCAN 和DEBUG 等命令,没多少行代码就能实现:代码如下: <?php $patterns = array( 'foo:.+', 'bar:.+', '.+', ); $redis = new Redis(); $redis->setOption(Redis::OPT_SCAN, Redis::SCAN_RETRY); $result = array_fill_keys($patterns, 0); while ($keys = $redis->scan($it, $match = '* } } } } var_dump($result); ?> 当然,前提是你需要提前总结出可能的键模式,简单但不严谨的方法是MONITOR:代码如下: shell> /path/to/redis-cli monitor | awk -F '"' '$2 ~ "ADD|SET|STORE|PUSH" {print $4}' 此外,需要注意的是:因为DEBUG 返回的serializedlength 是序列化后的长度,所以最终计算的值小于实际内存占用,但考虑到相对大小依然是有参考意义的。 更多信息请查看IT技术专栏

redis twemproxy集群安装手册

一、概述 1、Redis集群安装有两种方式,第一种为编译源码安装,第二种为二进制安 装,具体选择哪一种方式根据实际情况决定。 2、本文档所使用版本如下: redis:redis-3.0.0-rc5 Twemproxy:nutcracker-0.4.0 autoconfig:2.69 3、常用Linux命令不清楚可以查看相关网站 4、本文档所述redis集群架构如下: 5、本文档使用120和121搭建redis集群,每台机器各启动两个redis实例 和一个twemproxy实例。Redis端口分别为6379 6380 6、采用源码编译方式安装需服务器具有访问外网权限,二进制安装不需求。 7、所有安装包均已上传至文件服务器 二、源码编译方式安装 1、安装automake 执行:yum install automake,出现如下输入Y完成安装:

2、libtool安装 执行:yum install libtool 出现如下输入yes完成安装 3、autoconfig安装 ①上传autoconf-2.69.tar.gz至/usr/local/src目录下 ②执行tar -xzvf autoconf-2.69.tar.gz ③cd autoconf-2.69 ④执行./configure ⑤执行make ⑥执行make install 至此,autoconfig安装完毕 4、redis安装 ①上传redis-3.0.0-rc5.zip至/usr/local/src目录下 ②执行unzip redis-3.0.0-rc5.zip ③执行cd redis-3.0.0-rc5 ④执行make&&make install ⑤执行mkdir /usr/local/redis ⑥执行cp src/redis-server src/redis-cli /usr/local/redis ⑦执行cd /usr/local/redis ⑧执行chmod 777 redis-server redis-cli ⑨执行./redis-server --port 6379 --save "" & 出现如下 ⑩执行./redis-cli -p 6379出现如下

Redis数据库简介

介绍 Redis是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,如字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sorted sets)与范围查询, bitmaps, hyperloglogs 和地理空间(geospatial)索引半径查询。 Redis 内置了复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions)和不同级别的磁盘持久化(persistence),并通过 Redis哨兵(Sentinel)和自动分区(Cluster)提供高可用性(high availability)。 版本 官方版本 目前官方版本支持Linux系统和Ubuntu系统。官方下载地址: http://redis.io/download 由于我们的开发项目以Windows为主,所以在此不对官方版本做详细介绍,有兴趣的可以到官网查看。 #### 非官方版本(Windows 版本)官方没有Redis的Windows版本,但是微软开源技术团队(Microsoft Open Tech group)自行开发和维护了一个Win64的版本。 - 微软团队只提供了官方64位版本,而32位版本,需要自己从源代码构建。 - Released版本中提供了msi文件,Redis可以作为Windows服务安装 安装服务 ?下载Win64的压缩文件到一个指定文件夹 ?打开一个 cmd 窗口使用cd命令切换目录到解压缩的文件夹下运行redis-server.exe redis.windows.conf ?redis-server.exe启动Redis服务 ?redis.windows.conf Redis服务的一些配置,不写则会调用默认设置 ?端口号默认6379可以通过修改配置文件redis.windows-service.conf修改或CONFIG set命令修改 运行客户端 ?打开一个 cmd 窗口使用cd命令切换目录到解压缩的文件夹运行redis-cli.exe -h 127.0.0.1 -p 6379 ?redis-cli.exe启动Redis客户端 ?-h 127.0.0.1服务器IP地址 ?-p 6379服务器端口号

我终于深入参与了一个分布式系统了,好多想法不一样了!

我终于深入参与了一个分布式系统了,好多想法不一样了! 原文出处:Turbo Zhang 的博客前言 过去两个月深入的参与了一个分布式系统的开发,记得之前有人说过“想成为架构师之前,都是从微观架构开始的”。尽 管我从没想过将来的某一天要成为一个架构师,或者领域专家,我只是想萌萌哒的编码,写着自己喜欢的Code,和一 群志同道合的朋友做出大家喜欢的商品和产品。但是工作久了慢慢的搭架子的事情还是会来到你的面前,因为时间总会把一部分人慢慢推向海边,使得他们成为最早见到阳光的人。不扯淡了,为什么要说阳光呢,还是因为过去的两(三)个月可能过的太充实也太痛苦了,完成之后,曙光来临的时候整个人是会发光的哦。“深度”参与是因为我终于有机会在搭 架子的过程中有了话语权和选择权,同时也会承担70%以上的编码工作。 之前我的自我认知是我可能在软件方面的积累还可以,比如设计模式,架构分层,程序解耦,API入手等方面,但是总觉得我在硬件网络方面积累的太少,太薄了。 比如: 不同操纵系统之间的特点;

网络端口管理与分发; 哪些网络协议可以帮助我们更好的完成工作,监控虚拟机的时候是在虚机上加代理好还是用协议去控制; 硬件是否支持分布式,在扩展过程中对于.net C#的兼容怎么样; 什么时候使用多线程,在把线程交给程序调度的时候我们怎么控制和捕捉线程的异常; 日志系统对于整个分散的系统是多么的重要; 何时使用关系数据库,什么时候使用Nosql; 消息队列用擅长的MSMQ还是RabbitMQ. 怎样有效的和其他部门的同事沟通; 用什么样的方式去有效调度不同语言开发的系统; 测试用例对于大系统从零散到完整是多么的重要; 系统标准,代码原则对于后期的维护余扩展是多么的重要;等; 项目简介 首先项目详细内容不便多说,简答的说,就是为国内某大型厂商建立一套协调其自身搭建的私有云以及其购买的公有 云的一套系统。说牛X一点就是:一套混合云系统。 使用Restful

分析Redis架构设计

redis启动流程 1.初始化server变量,设置redis相关的默认值 2.读入配置文件,同时接收命令行中传入的参数,替换服务器设置的默认值 3.初始化服务器功能模块。在这一步初始化了包括进程信号处理、客户端链表、共享对象、初始化数据、初始化网络连接等 4.从RDB或AOF重载数据 5.网络监听服务启动前的准备工作 6.开启事件监听,开始接受客户端的请求 启动的部分过程通过查看下图,会更直观。 下面是针对启动过程中,对各个模块的详细理解。(目前只分析了后台线程系统与慢查询

日志系统) 三、Redis数据持久化方案 在使用redis时不少人都说一个问题,就是说redis宕机了怎么办?会不会数据丢失等等的问题。 现在来看看Redis提供的数据持久化解决方案,并通过原理分析优缺点。最终能得出Redis适合使用的应用场景。 1.RDB持久化方案 在Redis运行时,RDB程序将当前内存中的数据库快照保存到磁盘中,当Redis需要重启时,RDB程序会通过重载RDB文件来还原数据库。 从上述描述可以看出,RDB主要包括两个功能: 关于rdb的实现可以见src/rdb.c a)保存(rdbSave) rdbSave负责将内存中的数据库数据以RDB格式保存到磁盘中,如果RDB文件已经存在将会替换已有的RDB文件。保存RDB文件期间会阻塞主进程,这段时间期间将不能处理新的客户端请求,直到保存完成为止。 为避免主进程阻塞,Redis提供了rdbSaveBackground函数。在新建的子进程中调用rdbSave,保存完成后会向主进程发送信号,同时主进程可以继续处理新的客户端请求。

云数据库Redis版

云数据库 Redis 版 用户指南

用户指南 使用购买 Redis 的账号登录 Redis 管理控制台。进入 Redis 实例列表界面,如下图所示。 管理实例 修改密码 如果您忘记密码、需要修改旧密码,或者在创建实例时没有设置密码,您可以重新设置实例的密码。 登录 Redis 管理控制台。 定位到目标实例,点击实例ID或者管理进入实例信息页面。 在修改密码窗口,输入旧密码和新密码,点击确认。 注意:如果您忘记密码,在修改密码窗口点击忘记旧密码的链接,可以在重置密码的窗口设置新密码。 云数据库 Redis 版支持按量付费模式,按量付费可以可执行变配操作。详细步骤请参考变配流程。 阿里云数据库支持经典网络和专有网络两种网络类型。本章介绍两种网络类型的区别及设置方法。 背景信息 在阿里云平台上,经典网络和专有网络的区别如下:

1.2.经典网络:经典网络中的云服务在网络上不进行隔离,只能依靠云服务自身的安全组或白名单策略来阻挡非法访问。 专有网络(Virtual Private Cloud,简称 VPC):专有网络帮助用户在阿里云上构建出一个隔离的网络环境。用户可以自定义专有网络里面的路由表、IP 地址范围和网关。此外用户可以通过专线或者VPN 的方式将自建机房与阿里云专有网络内的云资源组合成一个虚拟机房,实现应用平滑上云。 注意:经典网络可以转换为专有网络,专有网络不支持更换为经典网络。 Redis 默认使用经典网络,如果您要使用专有网络(VPC),Redis 和 VPC 必须在同一地域,有以下两种方式: 如果 Redis 还没有创建,您可以先建立 VPC,然后在 VPC 下创建 Redis,具体请参见下文 新建Redis场景。 如果 Redis 已经创建,您可以在 Redis 同一地域创建 VPC,然后将 Redis 加入 VPC,具体请参见下文 已有 Redis场景。 新建 Redis 场景 创建 VPC, 具体请参见 VPC 快速入门。创建与 VPC 所在地域一致的 Redis 实例。 在购买过程中,网络类型选择专有网络,选择对应的 VPC 即可。参见 创建实例 章节。 已有 Redis 场景 创建与 Redis实例所在地域一致的 VPC,具体请参见 VPC快速入门。 登录 Redis 管理控制台,选择目标实例,单击管理。 在实例信息页面,单击切换为专有网络。 在切换为专有网络页面中选择 VPC 和 虚拟交换机,单击确定,如下图所示。

Redis 集群应用学习

集群技术是构建高性能网站架构的重要手段,试想在网站承受高并发访问压力的同时,还需要从海量数据中查询出满足条件的数据,并快速响应,我们必然想到的是将数据进行切片,把数据根据某种规则放入多个不同的服务器节点,来降低单节点服务器的压力。 上一篇我们讲到了Redis 的主从复制技术,当实现了多节点的master-slave 后,我们 也可以把它叫做集群,但我们今天要讲的集群主要是利用切片技术来组建的集群。 集群要实现的目的是要将不同的key 分散放置到不同的redis 节点,这里我们需要一个 规则或者算法,通常的做法是获取key 的哈希值,然后根据节点数来求模,但这种做法有其明显的弊端,当我们需要增加或减少一个节点时,会造成大量的key 无法命中,这种比例是相当高的,所以就有人提出了一致性哈希的概念。 一致性哈希有四个重要特征: 均衡性:也有人把它定义为平衡性,是指哈希的结果能够尽可能分布到所有的节点中去,这样可以有效的利用每个节点上的资源。 单调性:对于单调性有很多翻译让我非常的不解,而我想要的是当节点数量变化时哈希的结果应尽可能的保护已分配的内容不会被重新分派到新的节点。 分散性和负载:这两个其实是差不多的意思,就是要求一致性哈希算法对key 哈希应尽可能的避免重复。 但一致性哈希不是我们今天要介绍的重点,因为Redis 引入另一种哈希槽(hash slot) 的概念。 Redis 集群中内置了16384 个哈希槽,当需要在Redis 集群中放置一个key-value 时,redis 先对key 使用crc16 算法算出一个结果,然后把结果对16384 求余数,这样每个key 都会对应一个编号在0-16383 之间的哈希槽,redis 会根据节点数量大致均等的将哈希槽映射到不同的节点。 使用哈希槽的好处就在于可以方便的添加或移除节点。 当需要增加节点时,只需要把其他节点的某些哈希槽挪到新节点就可以了; 当需要移除节点时,只需要把移除节点上的哈希槽挪到其他节点就行了; 内部机制,与我何干,对于我们来说,在新增或移除节点的时候不要让我们先停掉所有的redis 服务我就谢天谢地了,这点它做到了。 下面我们就开始动手搭建一个redis 集群来体验一下。 因为我们要启动多个redis 实例,虽然我们可以直接通过命令行来启动,但始终是不怎么方便的,所以我们先来新建三个实例目录,分别是9001,9002,9003,目录名就是redis 实例的端口号。

Redis中文入门手册

Redis中文入门手册1.0 中国海事服务网(https://www.360docs.net/doc/3910176396.html,) zhangli收集整理

目录 1)Redis简介 (3) 2)数据类型 (3) 2.1.Redis的Key (3) 2.1.1.key相关指令介绍 (3) 2.2.Redis的vaule (3) 2.2.1.string类型 (3) 2.2.2.hash类型 (4) 2.2.3.list类型 (5) 2.2.4.set类型 (5) 2.2.5.sorted set类型 (6) 3)持久化 (7) 3.1.快照方式:(默认持久化方式) (7) 3.2.日志追加方式: (7) 4)虚拟内存(适用于value比key大的情况) (8) 4.1.Redis虚拟内存简介 (8) 4.2.Redis虚拟内存相关配置 (8) 4.3.redis虚拟内存工作方式简介 (9) 4.3.1.当vm-max-threads设为0时(阻塞方式) (9) 4.3.2.当vm-max-threads大于0时(工作线程方式) (9) 5)主从同步 (9) 5.1.Redis主从复制简介 (9) 5.2.Redis主从复制的过程介绍 (10) 附录A:redis的安装与配置 (10) 1.1.安装 (10) 1.1.1.编译安装 (10) 1.1.2.配置 (11) 1.1.3.启动redis (11) 1.1.4.关闭redis (11) 1.1.5.更新安装redis (12) 1.1.6.redis系统管理相关指令简介 (12) 附录B:安装phpredis模块 (12) 参考资料与知识扩展 (13)

软件开发应知应会-84分

研究数据结构就是研究() A.数据的逻辑结构 B.数据的存储结构 C.数据的逻辑结构和存储结构 D.数据的逻辑结构、存储结构及其运算结构 栈和队列的共同特点是()。 A.都是先进先出 B.都是先进后出 C.只允许在端点处插入和删除 D.没有共同点 关键路径是事件结点网络中()。 A.从源点到汇点的最长路径 B.从源点到汇点的最短路径 C.最长的回路 D.最短的回路 以下是线性表的数据结构是()。 A.数组 B.单链表 C.双链表 D.循环链表 以下()是常用的哈希函数构造方法。 A.直接寻址法 B.除留余数法 C.随机数法 D.平方取中法 不属于Swift属性的是() A.存储属性 B.计算属性 C.类型属性 D.以上都不是 CSS3的优点是() A.减少开发成本

B.减少维护成本 C.提高页面性能 D.以上都是 Objective-C最大的特色是承自Smalltalk的(),此机制与今日C++式之主流风格差异甚大。 A.消息传递模型(message passing) B.阅读者模式模型 C.单例模式模型 D.广播模型 CSS的定位常用属性有以下几个值() A.static B.relative C.fixed D.absolute 以下哪些是语义化标签? A.div B.span C.article D.header 在shell中,使用一个定义过的变量,引用时在变量名前加()。 A.$ B.& C.* D.@ SQL中删除数据库的关键字是()。 A.select B.insert C.delete D.drop SQL语句中删除一个表中记录,使用的关键字是()。 A.select B.insert C.delete

Redis开发常用规范

Redis开发常用规范 1.冷热数据分离,不要将所有数据全部都放到Redis中 虽然Redis支持持久化,但是Redis的数据存储全部都是在内存中的,成本昂贵。建议根据业务只将高频热数据存储到Redis中【QPS大于5000】,对于低频冷数据可以使用 MySQL/ElasticSearch/MongoDB等基于磁盘的存储方式,不仅节省内存成本,而且数据量小在操作时速度更快、效率更高! 2.不同的业务数据要分开存储 不要将不相关的业务数据都放到一个Redis实例中,建议新业务申请新的单独实例。因为Redis为单线程处理,独立存储会减少不同业务相互操作的影响,提高请求响应速度;同时也避免单个实例内存数据量膨胀过大,在出现异常情况时可以更快恢复服务! 3.规范Key的格式 合适的key,便于查看,统计,排错。 “平台缩写“+“:”+“项目名”+“:”+“业务含义” 例如:GW:TRADE:USERID GW是新网关,TRADE是交易项目,USERID为业务ID。 ":"-作为key分隔符,方便客户端工具作为目录分级 4.存储的Key一定要设置超时时间 如果应用将Redis定位为缓存Cache使用,对于存放的Key一定要设置超时时间!因为若不设置,这些Key会一直占用内存不释放,造成极大的浪费,而且随着时间的推移会导致内存占用越来越大,直到达到服务器内存上限!另外Key的超时长短要根据业务综合评估,而不是越长越好!(某些业务要求key长期有效。可以在每次写入时,都设置超时时间,让超时时间顺延。) public Boolean set(final byte[] key, final byte[] value, final long liveTime) { return redisTemplate.execute(new RedisCallback() {

SSDB入门基础

SSDB ?入?门基础 ?文档信息!2 SSDB 简介!3 PHP 使?用?示例!3 SSDB 数据类型!3 KV!3 Hashmap!3 Zset!4安装和运?行!4使?用 SSDB 命令?行客户端(ssdb-cli)!6运?行 ssdb-cli!6进?行 KV 操作!6进?行 hashmap 操作!6进?行 zset 操作!7 SSDB 应?用程序开发!7?示例 1: 在线书店!8保存书籍信息!8建?立排序索引!8分?页浏览!8相关链接!8

?文档信息 作者: ideawu ??网站: https://www.360docs.net/doc/3910176396.html,/?日期: 2013-09-29 更新: 2013-10-13

SSDB 简介 SSDB 是?一个 C++ 语?言开发的?高性能开源 NoSQL 数据库服务器, ?支持 Key-value, Key-hashmap, Key-zset(sorted set) 等数据结构, ?十分适合存储数亿条级别的列表, 排序表等集合数据, 是 Redis 的替代和增强?方案. SSDB 具有和 Redis 相似的 API, ?支持的客户端包括: PHP, C++, Python, Java, Lua, Ruby, Nodejs, etc. 项??目主?页: https://https://www.360docs.net/doc/3910176396.html,/ideawu/ssdb PHP 使?用?示例 set('key', '123'); $resp = $ssdb->get('key'); echo $resp; // output: 123 SSDB 数据类型 SSDB ?支持三种数据类型, 别分是 KV(key-value), Hashmap(map), Zset(sorted set). 三种数据类型处于不同的命名区间, 所以不同类型的数据可以起相同的名字, 但不建议这么做. KV KV 数据类型?支持基本的 set(), get(), del(), incr() ?几种操作. KV 数据类型主要?用于存储离散的, 之间没有关系(或者关系被忽略)的?大数据, 如图?片?文件, ?大段?文本等. ?一般 KV 类型都可以被 Hashmap 替代, 但 KV 会?比 Hashmap 性能?高?一些. key value k1vc k2vx k3vy Hashmap Hashmap 类型和 KV 功能相似, 可?用于存储?大体积的数据, 但不同的数据项在业务上处于某个集合. 并且, Hashmap 维护了?一个集合?大?小的计数. Hashmap 中的数据项是 Key-value 的键值对, 并且按 Key 的字节数组顺序进?行排序.

大数据应用案例 大数据培训视频教程-大数据高并发架构实战案例

《大数据高并发系统架构实战方案(LVS负载均衡、Nginx、共享存储、海量数据、队列缓存)》 课程讲师:tom5 课程分类:Java 涉及项目:大数据高并发系统平台架构 用到技术:LVS负载均衡、Nginx、共享存储、海量数据 其他特性:队列缓存、缓存平台、mysql主从复制 涵盖内容:视频、代码、ppt 课时数量:21 随着互联网的发展,高并发、大数据量的网站要求越来越高。而这些高要求都是基础的技术和细节组合而成的。本课程就从实际案例出发给大家原景重现高并发架构常用技术点及详细演练。 通过该课程的学习,普通的技术人员就可以快速搭建起千万级的高并发大数据网站平台。 亮点一:真实环境还原,课程采用了VM环境重现大网站集群服务器环境,真实环境还原再现。 亮点二:基础实用,细节决定成败,课程内容在演练过程中重点介绍各种细节,保证初级人员快速入门及高级进阶。 亮点三:讲师丰富的海量平台运作经验 第一章概述(1课时)简要介绍该系列课程的内容, 本章内容如下: 主流高并发大数据应对技术介绍 CDN镜像技术介绍 静态化技术介绍 库表水平及垂直拆分技术介绍 虚拟化云计算体系介绍 高并发系统架构规划 高并发大型网站高可靠架构图 课程安排简介 高并发大型网站高可靠架构网络IP规划 搭建实战环境的准备工作 SFTP客户端Filezilla使用简介 SSH客户端SecureCRT使用简介 Centos关闭图形界面启动及开启sshd实战 虚拟机clone后网卡重新初始化演练 VMware使用技巧演练 第二章 LVS实现负载均衡软交换实战(5课时)

本章演练的是负载均衡技术的核心,主要包括LVS的类型特点适用场景介绍,使用Piranha安装快速搭建LVS负载均衡集群及配置,LVS负载均衡DR模式深入安装调试,LVS调度策略及负载均衡原理详细演练,LVS深入实践NAT模式集群调试。 详细内容如下: LVS服务器配置准备 关闭centos网卡自动管理实践 上网网卡手动配置 yum镜像加速 yum安装Piranha piranha-gui启动 防火墙配置开通3306口 pulse启动 piranha安装效果验证 nginx服务器配置安装 主机名配置 添加nginx的yum安装源 yum安装nginx nginx安装效果验证 防火墙配置打开80口 防火墙配置虚IP包转发规则支持LVS的DR模式 Piranha配置DR模式详解演练 global settings公网IP配置Primary server public ip redundancy配置lvs服务器的冗余, virtual servers配置Virtual IP Address和real server 主从配置scp复制 LVS安装效果验证 ipvsadm演练 热备切换 LVS自服务配置启动 Piranha相关轮询配置参数讲解及效果演示 Round robin:轮转调度轮询(最简单的轮询) Weighted least-connections:加权最少连接(考虑负载、服务器性能因素) Weighted round robin:加权最少连接(考虑服务器性能因素) Least-connection:最少连接(考虑负载因素)等 /etc/sysconfig/ha/lvs.cf 文件配置内容详细讲解 LVS调度策略深入及效果演示 服务器集群负载均衡简化的整体结构讲解 基于DNS的请求调度 基于前端调度器的请求调度 四层交换-通过DR实现报文转发 四层交换-通过IP隧道实现报文转发 四层交换-通过NAT实现报文转发

相关文档
最新文档