对于分布式缓存,之前公司项目中只使用了MemCached,使用比较方便,有现成的C#版本组件。

如今用Redis的公司有很多,所以打算了解一下Redis。

Redis的官网地址:http://redis.io

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

  Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
  Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。
  Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。
 
搭环境:
公司资源限制问题,找了一台工作机器,安装了VMWare, 虚拟了一台Ubantu(乌班图)linux系统。
(1). 配置IP,修改文件/etc/network/interfaces,注意为了使虚拟机与主机的IP能够互ping,需要将虚拟机的IP与主机设置在同一个网段:

>gedit /etc/network/interfaces

内容:

auto eth0

iface eth0 inet static

address 192.168.32.216

netmask 255.255.255.0

gateway 192.168.32.2

(2).修改文件 /etc/resolv.conf

>gedit /etc/resolv.conf

内容:

nameserver 192.168.32.2

(3)执行如下命令让配置生效

>sudo /etc/init.d/networking restart

通过执行ifconfig检查配置是否成功。

(4)安装Redis

从Redis 官网下载文件 redis-3.0.2.tar.gz,将该文件放入虚拟机目录/home/anny/tools/下。

执行如下命令:

tar zxvf redis-3.0.2.tar.gz
cd redis-3.0.2/src
make

将Redis需要的文件移动到 目录 /usr/local/redis中,命令如下:

mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/etc
mv /home/anny/redis-3.0.2/redis.conf /usr/local/redis/etc
cd /home/anny/redis-3.0.2/src
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin

如果想让redis server在后台运行,可以修改redis的配置文件redis.conf,修改 “daemonize no” 改为“daemonize yes”。

 ./redis-server /usr/local/redis/etc/redis.conf
通过以下命令检查redis(Redis的默认端口是6379)是否在后台成功运行:
ps -ef | grep redis
netstat -tunpl | grep 6379
 
运行redis 客户端程序:
./redis-cli
 
在centos下,关闭Redis Server,命令如下:
pkill redis-server
 
在Ubantu下,关闭Redis Server,命令如下:
先通过命令查看进程ps -e
 2039 ?        00:00:27 redis-server
然后找到redis-server的进程ID,例2039
kill -2039 或者 kill -9 2039
这样就关闭了redis-server进程,通过命令netstat -tunpl | grep 6039,就看不到信息了,表明redis-server进程已经关闭。
 
 
 

Redis 学习第一课:安装Linux Redis(Ubantu)的更多相关文章

  1. Redis学习笔记(2)——Redis的下载安装部署

    一.下载Redis Redis的官网下载页上有各种各样的版本,如图 但是官网下载的Redis项目不正式支持Windows.如果需要再windows系统上部署,要去GitHub上下载.我下载的是Redi ...

  2. EbitenCookBook中文教程 第一课:安装 Ebiten

    本文实时更新原址:https://ebitencookbook.vercel.app/docs/CookBook_Start/class1 第一课 安装 Ebiten 欢迎大家来到 Ebiten 中文 ...

  3. Magento学习第一课——目录结构介绍

    Magento学习第一课--目录结构介绍 一.Magento为何强大 Magento是在Zend框架基础上建立起来的,这点保证了代码的安全性及稳定性.选择Zend的原因有很多,但是最基本的是因为zen ...

  4. Redis学习笔记(3)——Redis的命令大全

    Redis是一种nosql数据库,常被称作数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted se ...

  5. Redis学习笔记(1)——Redis简介

    一.Redis是什么? Remote Dictionary Server(Redis) 是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value ...

  6. Elasticsearch7.X 入门学习第一课笔记----基本概念

    原文:Elasticsearch7.X 入门学习第一课笔记----基本概念 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https: ...

  7. OpenCV 第一课(安装与配置)

    OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...

  8. 分布式缓存技术redis学习系列(一)——redis简介以及linux上的安装

    redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...

  9. Redis 学习笔记系列文章之 Redis 的安装与配置 (一)

    1. 介绍 Redis is an open source (BSD licensed), in-memory data structure store, used as database, cach ...

随机推荐

  1. 下列java代码中的变量a、b、c分别在内存的______存储区存放。

    class A{ private String a = "aa"; public boolean methodB(){ String b = "sb"; fin ...

  2. asp.net webform 自定义 select 绑定数值

    前台: <select id="ddlAddedItemType" runat="server"> <option value="& ...

  3. R语言低级绘图函数-abline 转载

    abline 函数的作用是在一张图表上添加直线, 可以是一条斜线,通过x或y轴的交点和斜率来确定位置:也可以是一条水平或者垂直的线,只需要指定与x轴或y轴交点的位置就可以了 常见用法: 1)添加直线 ...

  4. Java I/O学习 文件读写工具

    import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import jav ...

  5. Goroutines和Channels(一)

    Go语言中的并发程序可以用两种手段来实现.本章讲解goroutine和channel,其支持“顺序通信进程”(communicating sequential processes)或被简称为CSP.C ...

  6. css3转盘

    此效果涉及到 : 1. css 画图形 2. css3 动态效果 3. 贝塞尔曲线 用法 <style> .lds-hourglass { display: inline-block; p ...

  7. C# 通过Newtonsoft.Json.dll序列化日期的处理

    Newtonsoft.Json.dll提供了非常好的Json序列化和反序列化方式,但是对日期的处理却让我纠结了很久.首先定义类如下: public class Student{ public int ...

  8. codeforces 547c// Mike and Foam// Codeforces Round #305(Div. 1)

    题意:给出数组arr和一个空数组dst.从arr中取出一个元素到dst为一次操作.问每次操作后dst数组中gcd等于1的组合数.由于数据都小于10^6,先将10^6以下的数分解质因数.具体来说从2开始 ...

  9. 『Sklearn』数据划分方法

    原理介绍 K折交叉验证: KFold,GroupKFold,StratifiedKFold, 留一法: LeaveOneGroupOut,LeavePGroupsOut,LeaveOneOut,Lea ...

  10. JS-图片控制-动画管理模块

    animateManage.js ;(function(window,document,undefined){ var _aniQueue = [], //动画队列 --- ani:动画,Queue: ...