官方对Redis的阐述:

Redisis an open source, BSD licensed, advanced key-value cache and store. It is often referred to as adata structure server since keys can contain stringshasheslistssetssorted setsbitmaps andhyperloglogs.

Redis是一个开源的,BSD许可的,高级的“键-值缓存存储。它经常被称为是一个数据结构服务器,因为可以字符串哈希表列表集合有序集合、位图和hyperloglogs

Introduction to Redis”概要地介绍了Redis的关键特性和功能:

  1. atomic operations (所有命令都是原子操作)
  2. in-memory dataset (所有数据都放在内存中)
  3. 具有有限存活时间的
  4. LRU缓存
  5. 持久化(RDB-内存快照|镜像AOF-追加每个命令到日志)
  6. 主从异步复制
  7. Sentinel-自动故障转移
  8. 事务
  9. 发布/订阅
  10. Lua脚本
  11. 推荐使用Linux系统部署

和常见命令的使用场景

  1. 增加哈希表中的值(某物不同维度的计数器或属性)
  2. 压入一个元素到一个列表(消息列表、队列)
  3. 有序集合中获取排名最高的成员(TOP N、热点实时新闻、热点搜索)

[参考]

  1. Redis 命令中文版, huangz同学的翻译

【动手实践】

实践目标:探索高可靠和可扩展的分布式Redis缓存方案

在实践过程中有不懂的地方,都会去看看 Documentation有没我想要的东东~

从Redis源代码编译和安装的步骤,如下:

1. 从Download下载最新的稳定版并解压

  1. $ wget http://download.redis.io/releases/redis-2.8.17.tar.gz
  2. $ tar -xzf redis-2.8.17.tar.gz

2. 在解压文件之后,请务必先仔细阅读发布文件(redis-2.8.17)下的 INSTALL 和 README (里面有一些很重要的信息等待你去了解,能为你日后节省不少时间哦!你懂~ ^_^)

3. 按照 README 里的步骤说明来构建Redis、运行Redis、玩转Redis、安装Redis

3.1 构建Redis(务必在服务器上运行测试,确保所有命令都是可用的)

  1. $ cd redis-2.8.17
  2. $ make
  3. $ make test

构建时,我遇到提示"缺少C++编译器"的错误,并会提示可用的安装包("sudo apt-get install g++")。

3.2 运行Redis服务器

  1. $ src/redis-server

3.3 玩转Redis客户端

  1. $ src/redis-cli
  2. redis> set foo bar
  3. OK
  4. redis> get foo
  5. "bar"

3.4 安装Redis服务

  1. $ sudo make install

4. 若使用 utils/install_server.sh 来生成初始化脚本配置文件安装并启动服务的话,可以大大地节省配置的时间。但在使用之前,请先浏览一下其实现 (注意:服务已作为系统的一部分,会在系统重启时自动启动!)

  1. $ sudo sh install_server.sh

5. 在修改默认的配置属性之前,请浏览 redis.conf。若要修改默认的一些配置属性,可以参考 Redis configuration,更详细的信息就参考 Documentation的 Administration 主题内容

6. “Redis as an LRU cache”,Redis作为一个LRU缓存的配置参考 (内容很有价值!)

  1. maxclients 65536
  2. maxmemory 128MB
  3. maxmemory-policy allkeys-lru
  4. maxmemory-samples 10
  5. # 注释掉 RDB 的所有触发规则
  6. #save 900 1
  7. #save 300 10
  8. #save 60 10000

7. “Master-Slave”主从架构的配置修改,请参考 @江南白衣 整理的关于Redis方面最全面的 Redis springside4的 “附录1: 对redis.conf默认配置的修改

  1. daemonize yes

8. 当 redis.conf 中的相关属性都修改完成后,就可以执行 utils/install_server.sh 脚本了

9. 使用“sudo netstat -anp | grep redis”来确认所有Redis服务是否都已启动成功

至此,所有Redis服务都启动完毕。

Redis服务快速部署的更多相关文章

  1. 三十九.NoSQL概述 部署Redis服务 、 部署LNMP+Redis

    1. 搭建Redis服务器 在主机 192.168.4.50 上安装并启用 redis 服务 设置变量test,值为123 查看变量test的值   1.1 搭建redis服务器 1.1.1 安装re ...

  2. rsync 服务快速部署手册

    一.rsync服务端安装 1.查看rsync安装包 # rpm -qa rsync rsync-3.0.6-12.el6.x86_64 2.安装rsync 系统默认都会安装rsync软件包的,如果查看 ...

  3. Redis服务监控之RedisLive安装部署(亲测可用)

    一.Redis服务安装部署 1.redis安装(linux系统) 下载 https://redis.io/ 安装依赖 yum install gcc tcl 解压.编译.安装(make & m ...

  4. Redis简介与部署

    一.简介 Redis是什么?redis是一款基于BSD协议,开源的非关系型数据库(nosql数据库),作者是意大利开发者Salvatore Sanfilippo在2009年发布,使用C语言编写:red ...

  5. 阿里云服务上面部署redis + 本地Redis客户端连接方法

    本文结合自己在阿里云服务器上面搭建redis服务器,在本地redis的客户端Redis Desktop Manager连接成功的操作,将操作中的一些方法做了一些归纳和总结,希望可以帮到有需要的同学. ...

  6. redis快速部署

    1. 场景描述 以前是直接使用公司提供的redis集群,只使用不负责维护,因项目用到负载均衡,需要使用redis做session共享,存储session信息,所以就部署了下,记录下以便后续能快速部署. ...

  7. centos下部署redis服务环境的操作记录

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主 ...

  8. redis常用服务安装部署

    常用服务安装部署   学了前面的Linux基础,想必童鞋们是不是更感兴趣了?接下来就学习常用服务部署吧! 安装环境: centos7 + vmware + xshell 即将登场的是: mysql(m ...

  9. centos下部署redis服务环境及其配置说明

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主 ...

随机推荐

  1. 根据block取出space_id

    /*********************************************************************//** Gets the space id of a bl ...

  2. 【Struts】strust.xml中<result type="">所有类型详解

    在默认时,<result>标签的type属性值是“dispatcher”(实际上就是转发,forward).开发人员可以根据自己的需要指定不同的类型,如redirect.stream等.如 ...

  3. 【转】【cocos2d-x教程】如何使用WebSocket

    介绍 WebSocket是HTML5开始提供的一种浏览器与服务器间进行全双工通讯的网络技术.在WebSocket API中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快 ...

  4. ejabberd中的http反向推送

    http的反向推送通常使用"长轮询"或"长连接"的方式. 所谓"长轮询"是指客户端发送请求给服务器,服务器发现没有数据需要发送给客户端. h ...

  5. gitphp日期乱码解决方案

    出现日期乱码的在以下文件中 templates rss tag commitdiffplain log project commit 搜索文件中的 %z 修改为以下代码 {$commit->Ge ...

  6. 《深入Java虚拟机学习笔记》- 第19章 方法的调用与返回

    <深入Java虚拟机学习笔记>- 第19章 方法的调用与返回

  7. Java序列化 如何把多个对象存储在一个文件中

    /** * 用于保存模板文件,内容包括: * 1,标志位,1 int * 2,版本   1 int * 3,数据头长度 1 int * 4,预留数据头空间  5120 byte * 5,后续数据长度  ...

  8. 求大于整数m且紧靠m的k个素数 及 判断一个数是否为素数的方法

    题目: 请编写一个函数void fun(int m,int k ,int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入xx所指的数组中. 例如,若输入:17,5,则应输出:19,23 ...

  9. HDU 3085 Nightmare Ⅱ 双向BFS

    题意:很好理解,然后注意几点,男的可以一秒走三步,也就是三步以内的都可以,鬼可以穿墙,但是人不可以,鬼是一次走两步 分析:我刚开始男女,鬼BFS三遍,然后最后处理答案,严重超时,然后上网看题解,发现是 ...

  10. 仿酷狗音乐播放器开发日志三——修复CEditUI的bug2

    无意中发现了CEditUI控件的另一个bug,当我给播放器的搜索栏获取焦点时,这时再改变窗体大小,原本搜索栏应该对应着也改变大小,却发现CEditUI内嵌的edit控件没有跟着改变(如下图),跟着调试 ...