博客
关于我
CentOs7 Redis6.0.6安装
阅读量:549 次
发布时间:2019-03-09

本文共 2697 字,大约阅读时间需要 8 分钟。

Redis是什么?

Redis是一种开源的支持键值存储的内存数据库,它以其高性能和多种数据结构(如字符串、列表、集合、有序集合和哈希)著称。与传统的关系型数据库如MySQL不同,Redis的数据以内存形式存储,并能定期将内存数据持久化到磁盘,确保数据的持久性。由于Redis运行缓存层特性,它在高并发场景下表现尤为出色,适合用于Web应用、中、大型实时系统等。

为什么要使用Redis?

在开发项目时,尤其是面对高并发或大数据量的应用,Redis的优势变得更加明显。例如,像Tieba这样的高并发社区,不同用户的请求如果都通过传统的关系型数据库处理,会导致服务器在高峰期响应速度大幅下降甚至崩溃。相比之下,Redis通过将热门数据存放在内存中,可以在微秒级别响应请求,避免因数据库性能瓶颈而影响用户体验。

CentOs7下安装Redis

1.安装wget工具

yum -y install wget

2.下载Redis源码

访问官方下载页面并选择适合的版本,建议使用最新稳定版本。使用wget下载:

wget http://download.redis.io/releases/redis-5.x.y.tar.gz

3.安装编译工具

如果没有安装编译环境,运行:

yum install gcc-c++

4.解压并安装

解压源码并移动到/usr/local目录:

tar -zxvf redis-5.x.y.tar.gzmv redis-5.x.y /usr/local/

进入目录并编译安装:

cd /usr/local/redis-5.x.ymakemake install

5.配置并启动Redis

默认配置文件可以在/usr/local/redis-5.x.y/redismag/redis.conf找到。建议定制配置并启动服务器:

cd /usr/local/redis-5.x.y/src./redis-server ../redis.conf

默认启动模式为后台模式(daemonize yes),可以根据需求修改配置。

6.验证运行状态

ps -ef | grep redis

查看是否有redis-server进程。如果有,说明Redis正在正常运行。

使用Jedis客户端连接Redis

Jedis是Java向Redis交互的标准客户端库,支持单实例和连接池模式。以下是基本用法示例:

单实例连接

import redis.clients.jedis.Jedis;import redis.clients.jedis.ConnectionListener;public class TestRedis {    public static void main(String[] args) {        // 建立连接        Jedis jedis = new Jedis("localhost", 6379);        // 测试连接        System.out.println(jedis.ping());        // 关闭连接        jedis.close();    }}

连接池连接

import redis.clients.jedis.Jedis;import redis.clients.jedis.ConnectionListener;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;public class TestRedis {    public static void main(String[] args) {        // pool配置        JedisPoolConfig config = new JedisPoolConfig();        config.setMaxTotal(30); // 最大连接数        config.setMaxIdle(10); // 最大空闲连接数                // 创建连接池        JedisPool pool = new JedisPool(config, "localhost", 6379);                Jedis jedis = null;        try {            jedis = pool.getResource();            // 设置值            jedis.set("key", "value");            // 获取值            System.out.println(jedis.get("key"));        } finally {            // 资源释放            jedis.close();        }    }}

检查Jedis连接

确保CentOS防火墙开放6379端口:

firewall-cmd --zone=public --add-port=6379/tcp --permanentfirewall-cmd --reloadfirewall-cmd --query-port=6379/tcp

常见问题与解决方案

  • 连接被拒绝(Connection refused)

    • 检查Redis配置文件,确保bind 127.0.0.1已注释。
    • 修改protected-modeno(默认值为yes)。
    • 重启Redis服务后,尝试连接。
  • 默认防火墙规则

    • 如果防火墙未开放6379端口,使用Jedis可能会失败。
    • 使用firewall-cmd --add-port=6379/tcp --permanent开放端口,待=""
  • 编译安装时错误

    • 确保安装了gcc及相关编译工具。
    • 检查Redis源码目录是否正确(/usr/local/redis-5.x.y)。
  • 注意事项

    • 配置文件
      Redis配置文件redis.conf位于解压后的根目录下,建议定制设置如daemonizebind等参数。
    • 备份与持久化
      使用rdbaof持久化方式备份数据,确保数据不丢失。
    • 性能优化
      替换带有线程的epoll表现更好,建议自定义配置文件redis.conf,如appendonly yesappendfsync on等。

    开源爱好者欢迎关注和转化!

    转载地址:http://hrlsz.baihongyu.com/

    你可能感兴趣的文章
    nodejs npm常用命令
    查看>>
    NodeJS 导入导出模块的方法( 代码演示 )
    查看>>
    nodejs 的 Buffer 详解
    查看>>
    nodejs 读取xlsx文件内容
    查看>>
    nodejs 运行CMD命令
    查看>>
    nodejs-mime类型
    查看>>
    NodeJs——(11)控制权转移next
    查看>>
    NodeJS、NPM安装配置步骤(windows版本)
    查看>>
    NodeJS、NPM安装配置步骤(windows版本)
    查看>>
    nodejs与javascript中的aes加密
    查看>>
    nodejs中Express 路由统一设置缓存的小技巧
    查看>>
    Nodejs中的fs模块的使用
    查看>>
    nodejs包管理工具对比:npm、Yarn、cnpm、npx
    查看>>
    NodeJs单元测试之 API性能测试
    查看>>
    nodejs图片转换字节保存
    查看>>
    nodejs字符与字节之间的转换
    查看>>
    NodeJs学习笔记001--npm换源
    查看>>
    NodeJs学习笔记002--npm常用命令详解
    查看>>
    nodejs学习笔记一——nodejs安装
    查看>>
    nodejs封装http请求
    查看>>