Redis源码安装for centos7

本文源链接地址:https:www.93bok.com

Redis概述

Redis的出现时间并不长,是NoSQL中的一种,基于键-值型的存储,与Memcache类似,但是Memcache中只是内存的缓存,而Redis不仅是内存中的缓存,还提供持久存储,在2009年第一次发布Redis

Redis 全称(REmote DIctionary

Server)远程字典服务器,而这个字典服务器从本质上来讲,主要是提供数据结构的远程存储功能的,可以理解为Redis是一个高级的K-V存储,和数据结构存储,因为Redis除了能够存储K-V这种简单的数据之外,还能够存储,列表、字典、hash表、等对应的数据结构

redis支持主从模式,但是redis的主从模式默认就有一个sentinel工具,从而实现主从架构的高可用,也就是说,redis能够借助于sentinel工具来监控主从节点,当主节点发生故障时,会自己提升另外一个从节点成为新的主节点

在redis 3.0版本发布,开始支持redis集群,从而可以实现分布式,可以将用户的请求分散至多个不同节点

Redis官网

官网地址:https://redis.io/

Redis和Memcache性能

在性能上redis不比memcache差,因为redis整个运行通通都是在内存中实现的,它的所有的数据集都是保存在内存中的,内存中的数据会周期性的写入到磁盘上,以实现数据的持久功能,而这种写磁盘并不是用于访问,而仅是冗余功能,所以redis所有功能都在内存中完成,因为此性能也是可想而知

Redis和Memcache不同

redis与mamcache不同之处在于redis有一个周期性的将数据保存到磁盘上的机制,而且不只一种,有两种机制,这也是redis持久化的一种实现,另外与mamcache有所区别的是,redis是单线程服务器,只有一个线程来响应所有的请求,相比较还有以下:

1)Redis中,并不是所有的数据都一直存储在内存中的,这是和Memcached相比一个最大的区别。
2)Redis不仅仅支持简单的k/v类型的数据,同时还提供list,sets,hash等数据结构的存储。
3)Redis支持数据的备份,即master-slave模式的数据备份。
4)Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
5)Redis在很多方面具备数据库的特征,或者说就是一个数据库系统,而Memcached只是简单的K/V缓存

Redis支持的数据类型

支持存储的数据类型有:

String(字符串,包含整数), List(列表), Hash(关联数组), Sets(集合), Sorted Sets(有序集合), Bitmaps(位图), HyperLoglog

Redis性能评估

1)100万较小的键存储字符串,大概消耗100M内存
2)由于redis是单线程,如果服务器主机上有多个CPU,只有一个能够使用,但并不意味着CPU会成为瓶颈,因为redis是一个比较简单的K-V数据存储,CPU通常不会成为瓶颈的
3)在常见的linux服务器上,500K(50万)的并发,只需要一秒钟处理,如果主机硬件较好的情况下,每秒钟可以达到上百万的并发

Redis优势

1)支持存储多种数据类型
2)内建Replication和cluster(自身支持复制和集群功能)
3)支持就地更新(in-place update)操作,直接可以在内存中完成更新的操作
4)支持持久化(写入磁盘)
5)避免雪崩,万一出现雪崩,所有的数据都无法恢复,但redis由于有持久性的数据,可以实现恢复

Memcache优势

1)多线程
2)善用多核CPU
3)更少的阻塞操作
4)更少的内存开销
5)更少的内存分配压力
6)可能有更少的内存碎片

Redis源码安装for centos7

1、源码安装
cd /a01/apps/apps_src/
tar -zxvf redis-4.0.8.tar.gz
cd redis-4.0.8
make
make PREFIX=/a01/apps/redis install
2、做好软链接
ln -s /a01/apps/redis/bin/* /usr/bin/
3、创建Redis相关目录
mkdir -p /etc/redis
mkdir -p /a01/apps/redis/data
mkdir -p /var/log/redis
mkdir -p /var/run/redis
4、创建Redis运行用户
useradd redis
5、授权
chown -R redis:redis /a01/apps/redis/
chown -R redis:redis /var/log/redis/
chown -R redis:redis /var/run/redis/
6、创建Redis配置文件
cp /a01/apps/apps_src/redis-4.0.8/redis.conf /etc/redis/
7、修改Redis配置文件
vim /etc/redis/redis.conf

##基本配置

bind 127.0.0.1                      #监听的地址,默认监听在127.0.0.1地址上,可以指定为0.0.0.0地址,或某个特定的地址,或可以指定多个,使用空格分隔即可
port 6379                           #监听端口:6379/tcp
tcp-backlog 511                     #指定tcp-backlog的长度
unixsocket /tmp/redis.sock              #指定使用sock文件通信及sock文件位置,如果服务端和客户都在同一台主机上,建议打开此项,基于sock方式通信可以直接在内存中交换,数据不用再经过TCP/TP协议栈进行封装、拆封
unixsocketperm 700                  #定义sock文件的访问权限
timeout 0                           #表示当客户端连接成功后,空闲(非活跃、或没有任何数据交互)多长时间则连接超时,0表示不启用此功能
tcp-keepalive 300                       #定义是否启用tcp-keepalive功能
daemonize yes                       #表示redis并不会运行成为一个守护进程,如果需要运行成为一个守护进程,则把no,改为yes即可,如果使用服务脚本启动,即使daemonize为no,也会运行为一个守护进程
pidfile /var/run/redis/redis_6379.pid       #定义pid文件
loglevel notice                     #定义日志级别
logfile /var/log/redis/redis_6379.log       #定义日志文件
databases 16                            #定义redis默认有多少个databases,但是在分布式中,只能使用一个

##RDB持久化相关

save 900 1                          #表示在900秒(15分钟内),如果至少有1个键发生改变,则做一次快照(持久化)
save 300 10                         #//表示在300秒(5分钟内),如果至少有10个键发生改变,则做一次快照(持久化)
save 60 10000                       #表示在60秒(1分钟内),如果至少有10000个键发生改变,则做一次快照(持久化)

dbfilename dump6379.rdb             #持久化数据名称
dir /a01/apps/redis/data                #持久化数据存放路径

##配置主从相关(这里没有配置主从,所以不修改)

slaveof <masterip> <masterport>     #此项不启用时,则为主,如果启动则为从,但是需要指明主服务器的IP,端口
masterauth <master-password>            #如果主服务设置了密码认证,那么从的则需要启用此项并指明主的认证密码
slave-read-only yes                 #定义从服务对主服务是否为只读(仅复制)

##定义与连接和资源相关的配置(未配置,默认即可)

maxclients 10000                        #定义最大连接限制(并发数)
maxmemory <bytes>                   #定义使用主机上的最大内存,默认此项关闭,表示最大将使用主机上的最大可用内存

##定义AOF持久化功能

appendonly yes                      #AOF的持久化功能相关配置,一旦有某一个键发生变化,将修改键的命令附加到命令列表的文件中,类似于MySQL二进制日志,此项定义是否开启AOF持久化功能,no表示关闭,yes表示开启

注意:RDB和AOF两种持久功能可以同时启用,两者不影响

8、编写Redis启动脚本
vim /etc/systemd/system/redis6379.service

[Unit]
Description=Redis persistent key-value database
After=network.target

[Service]
ExecStart=/a01/apps/redis/bin/redis-server /etc/redis/redis.conf --supervised systemd
ExecStop=/a01/apps/redis/bin/redis-cli shutdown
Type=notify
User=redis
Group=redis

[Install]
WantedBy=multi-user.target

chmod 754 /etc/systemd/system/redis6379.service
systemctl daemon-reload                     ##重新加载Unit文件
systemctl enable redis6379                      ##开机自启
systemctl start redis6379                       ##启动redis服务

原文地址:https://www.cnblogs.com/93bok/p/9679914.html

时间: 2024-10-14 01:08:14

Redis源码安装for centos7的相关文章

源码安装lamp(centos7)

1.源码安装lamp(centos7)(1)源码安装apr-1.5.2和apr-util-1.5.4 cd apr-1.5.2 ./configure && make && make install cd apr-util-1.5.4 ./configure  --with-apr=/usr/local/apr/ && make && make install (2)安装openssl-devel #mod_ssl has been requ

redis 源码安装

下载redis源码包到/opt/解压并改名为redis,也可以直接从官网下载上传至服务器安装目录 [email protected]:/opt/redis/logs# cd /opt/ [email protected]:/opt# ls install_saltminion.sh  install_zabbixagent.sh  nimsoft  redis  redis-3.2.1.tar.gz  zabbix-release_2.4-1+wheezy_all.deb  zeus [emai

源码安装nagios(centos7)

一.nagios简介1.一款开源的电脑系统和网络监视工具,可以有效监控windows.Linux和Unix的主机状态 ,交换机.路由器等网络设置.在系统或服务状态异常时发出邮件或者短信报警,第一 时间通知支离维人员,在状态恢复后发出正常的邮件或者短信通知.2.主要功能 网络服务监控(SMTP.POP3.HTTP.NNTP.ICMP.SNMP.FTP.SSH) 主机资源监控(CPU load.disk usage.system logs),也包括Windows主机(使用NSClient++ plu

redis 源码安装 及 swoole重新编译

官网下载redis 源码包 1.解压 tar -xzvf redis-4.0.9.tar.gz 2.编译 make sudo make install 3.使用Redis客户端,需要安装hiredis库.下载hiredis源码后,执行 make -j sudo make install sudo ldconfig 4.重新编译swoole 进入swoole解压后目录 ./configure --with-php-config=/home/php/bin/php-config --enable-a

redis源码安装与启动

1,安装gcc:yum install gcc-c++ 2,上传redis源码包 3,给可执行权限(chmod +x redis-3.0.7.tar.gz ) 4,解压 tar -zxvf redis-3.0.7 5,编译 make 6,指定目录安装(make PREFIX=/usr/local/redis install) 7, 8,启动服务端./redis-server(前段启动 不推荐) 9,配置后端启动 找到redis.conf 10, cp redis.conf /usr/local/

redis源码安装

#安装目录 mkdir -p /data/apps/redis cd /data/tgz wget http://download.redis.io/releases/redis-3.2.1.tar.gz cd redis-3.2.1 make PREFIX=/data/apps/redis install #安装到指定目录中 #在安装redis成功后,你将可以在/data/apps/redis看到一个bin的目录,里面包括了以下文件: redis-benchmark redis-check-a

centos7.2源码安装openssl1.0.2

centos7.2默认是安装了opensll软件包的,但是部署个别服务时,由于版本太低.会影响服务的正常部署.只能使用源码安装提高openssl软件版本. 因为之前有openssl软件包,所以要先移除之前版本: 删除旧版本: yum remove -y openssl openssl-devel 源码安装openssl需要perl环境编译,如果没有perl环境还是需要安装: yum -y install perl perl-devel 现在新版本openssl: wget https://www

centos6.5 64 源码安装redis服务,建立可远程连接的redis数据库

安装环境:centos6.5 64位 使用的包:redis-2.8.19.tar.gz  tcl8.6.3-src.tar.gz 包的下载链接:http://downloads.sourceforge.net/tcl/tcl8.6.3-src.tar.gz http://download.redis.io/releases/redis-2.8.19.tar.gz 本次安装的目录/home/hadoop/redis为任意目录 代码实现: 1,安装需要的支持环境 su root cd /home/h

MySQL代理Atlas在CentOS7.0中的源码安装实践(设置开机自启)

提示:如要去掉SQL过滤(无WHERE子句的UPDATE和DELETE)功能,可以先修改源码: 修改文件 Atlas-2.2.1\plugins\proxy\proxy-plugin.c 修改方法 is_in_blacklist,直接返回FALSE 依赖包: glib-2.32.4.tar.xz glibc-devel  libevent-devel  lua-devel  openssl-devel  flex  mysql-devel xz  gettext-devel 分步命令: # 安装