• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 知识库 知识库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

2022年01月05日发布小记Redis和安装部署

武飞扬头像
xhjyxxw
帮助1

知行礼动

大家好,今日小科来聊聊一篇关于2022年01月05日整理发布:小记Redis介绍与安装部署的文章,现在让我们往下看看吧!

推荐(免费):redis

文章目录

1.什么是Redis?2.Redis能做什么?3.下载、安装和部署Redis。4.Redis的一些小技巧?1.什么是Redis?

Redis:远程词典服务器(远程词典服务器)

Redis是用C语言编写的高性能(键/值)分布式内存数据库,完全开源免费,符合BSD协议。它也是一个运行在内存上并支持持久性的NoSQL数据库。它是目前最流行的NoSql数据库之一,也被称为数据结构服务器。同时,Redis也是一个简单、高效、分布式和基于内存的缓存工具。在构建好服务器后,通过网络连接(类似于数据库)提供键值缓存服务。

Redis具有以下优点:

1.非常高的性能。Redis的读取速度为11万次/秒,写入速度为8万次/秒2。丰富的数据类型Redis支持的类型有字符串、哈希、列表、集合和有序集合数据库类型。3.雾化Redis所有操作都被MULTI和EXEC指令自动包装。4.丰富的读写Redis支持发布/订阅、通知和密钥过期等功能。5.高速读写redis使用自己的分隔符代码,很短,不使用lock(MySQL),所以效率很高。Redis也有以下缺点:

1.持久Redis直接将数据存储在内存中。如果要将数据保存到磁盘,第一种方法是使用定时快照:每次将整个数据库写入磁盘时,总是写入所有数据,但成本很高;第二种方法是基于语句的追加(aof):只跟踪已更改的数据,但追加的日志可能太大,同时重新执行所有操作,恢复速度较慢。2.内存消耗占用了太多内存。第二,Redis能做什么

Redis在企业开发中可以作为数据库、缓存、热数据(经常被查询但没有被修改或删除的数据)、消息中间件等功能。

Redis的常见场景示例如下:

如今,缓存是几乎所有大中型网站都使用的关键技术。合理使用缓存不仅可以提高网站的访问速度,还可以大大减轻数据库的压力。Redis提供了密钥过期功能和灵活的密钥消除策略。

比如淘宝的月销量排行榜,按时间划分的新品排行榜等。Redis提供的有序集数据结构可以实现各种复杂的排行榜应用。

比如电商网站的商品浏览量,视频网站播放的视频数量。为了保证数据的实时性,在高并发的情况下,每次请求数据库操作都是一种挑战和压力。Redis提供的incr命令实现了计数器功能。内存操作性能非常好,非常适合这些计数场景。

在分布式会话集群模式下,当应用很少时,一般使用容器提供的会话复制功能来满足需求。在应用程序相对复杂的系统中,通常会构建一个以内存数据库(如Redis)为中心的会话服务。会话不由容器管理,而是由会话服务和内存数据库管理。

分布式锁技术带来的技术挑战是,利用数据库的悲观锁和乐观锁,可以实现对同一资源的并发访问,如全局ID、库存减少、尖峰等低并发场景。然而,在高并发的情况下,使用数据库锁来控制资源的并发访问并不理想,这极大地影响了数据库的性能。可以使用Redis的setnx函数来写分布式锁。如果设置返回1,表示锁获取成功,否则锁获取失败。在实际应用中应考虑更多细节。

社交网络赞、踩、关注/关注、互交好友等等都是社交网站的基本功能。一般来说,社交网站的访问量比较大,传统的关系数据库类型不适合存储这类数据。Redis提供的hash、collection等数据结构可以轻松实现这些功能。

最新列表Redis列表结构LPUSH可以在列表的头部插入一个内容id作为关键字,并且可以使用LTRIM来限制列表的数量,这样列表总是n个ID,不需要查询最新的列表就可以直接根据ID去对应的内容页面。

系统消息队列是大型网站必备的中间件,如ActiveMQ、RabbitMQ、Kafka等流行的消息队列中间件,主要用于低实时业务的业务解耦、流量削峰和异步处理。Redis提供发布/订阅和阻塞队列功能,实现简单的消息队列系统。但这是专业消息中间件无法相比的。

三.Redis的下载、安装和部署

Redis英文官网。Redis中文网站。

由于企业99%的Redis开发都是Linux版本的应用和安装,本文只介绍Linux下的安装和操作以及Windows下的安装和使用,朋友们可以自行百度一下。前往上述官方网站,点击下载下载。gz安装包并放在Linux下的/opt目录下(我这里已经安装了6.0.5版本的Redis)。

解压命令是:tar-zxvf redis-6.0.5.tar.gz。上面的命令只是解压缩Redis。如果要安装Re,

dis需要Linux系统有gcc环境如果没有可以使用yum install gcc-c 安装然后使用gcc -v查看版本。

如果Linux环境已经有了gcc环境直接使用下面的命令进行安装:

安装命令为:make install

安装好默认是像Tomcat那样不能开机自启的可以修改 redis.conf 文件中的 daemonize 属性为yes。

开启redis服务:redis-server /myredis/redis.conf(此处为修改属性后的redis配置文件)

查看后台Redis服务是否启动:

ps -ef|grep redis

开启Redis服务:

redis-cli -p 6379

正常关闭数据会进行保存 在redis命令行中使用shutdown命令关闭。

非正常关闭易导致数据丢失 断电、手动kill掉redis进程等。

几个其他的redis命令

四、Redis的几个小知识

Redis是一个单进程使用单进程模型来处理客户端的请求。对读写等事件的响应是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率。

epoll是Linux内核为处理大批量文件描述符而作了改进的epoll是Linux下多路复用IO接口select/poll的增强版本它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。

Redis默认有16个数据库下标从零开始初始默认使用零号库可以使用SELECT <dbid>命令连接上指定数据库。

dbsize指令可以查看当前数据库的key的数量keys *查看所有的key。

flushdb:清空当前库(慎用)

Flushall:清空全部库(慎用)

统一密码管理16个库都是同样密码要么都OK要么一个也连接不上。

Redis索引都是从零开始

Redis默认端口是6379

这篇好文章是转载于:知行礼动

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 知行礼动
  • 本文地址: /news/detail/tanhbggaib