官方对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. poj 3080 Blue Jeans(水题 暴搜)

    题目:http://poj.org/problem?id=3080 水题,暴搜 #include <iostream> #include<cstdio> #include< ...

  2. LBS云端数据删除和上传

    这里采用C#模拟表单提交,实现LBS云端删除和csv格式文件的上传. 删除: /// <summary> /// 从LBS云端删除数据 /// </summary> /// & ...

  3. UVa 1393 (容斥原理、GCD) Highways

    题意: 给出一个n行m列的点阵,求共有多少条非水平非竖直线至少经过其中两点. 分析: 首先说紫书上的思路,编程较简单且容易理解.由于对称性,所以只统计“\”这种线型的,最后乘2即是答案. 枚举斜线包围 ...

  4. tar 命令打包,除了某个目录剩下的都打包

    tar czvf beifen.tar.gz  ./webdata  --exclude webdata/uploadfiles

  5. 【 D3.js 进阶系列 】 进阶总结

    进阶系列的文章从去年10月开始写的,晃眼又是4个多月了,想在年前总结一下. 首先恭祝大家新年快乐.今年是羊年吧.前段时间和朋友聊天,聊到十二生肖里为什么没猫,我张口就道:不是因为十二生肖开会的时候猫迟 ...

  6. apache开源项目--Jackrabbit

    Apache Jackrabbit 是由 Apache Foundation 提供的 JSR-170 的开放源码实现.. 随着内容管理应用程序的日益普及,对用于内容仓库的普通.标准化 API 的需求已 ...

  7. 剑指Offer:找出数组中出现次数超过一半的元素

    题目:找出数组中出现次数超过一半的元素 解法:每次删除数组中两个不同的元素,删除后,要查找的那个元素的个数仍然超过删除后的元素总数的一半 #include <stdio.h> int ha ...

  8. 说下 winOS / IOS / android /Linux 视频、音频 编码解码问题

    最近有朋友遇到一个问题, ios 上传视频文件,想在本地压缩下,然后再上传到服务器. 问有没有什么 视频处理的库, 最近Khronos的webgl 支持HTML5 ,(原理 WebGL 是openGL ...

  9. The new Portable Class Library for SQLite z

    Microsoft Open Technologies has recently released a Portable Class Library for SQLite. Thanks to it, ...

  10. Puppet学习:pp文件权限问题

    由于内网的Puppet还是在测试中,所以对文件权限等内容未做过多关注. 今天报了错误: Error: Could not retrieve catalog from remote server: Er ...