当前位置: 首页 > wzjs >正文

濮阳网格化appwindows优化大师怎么使用

濮阳网格化app,windows优化大师怎么使用,数商云是外包吗,平面设计培训需要学什么文章目录 在 Rocky Linux 9.2 上编译安装 Redis 6.2.6Redis 介绍官网Redis 的核心特性高性能支持多种数据结构多种持久化机制复制与高可用2.5 事务与 Lua 脚本消息队列功能 Redis 适用场景Redis 与其他数据库对比Redis 的优势与劣势Redis 优势Redis 劣势 部署过程系统环境信息环…

文章目录

  • 在 Rocky Linux 9.2 上编译安装 Redis 6.2.6
  • Redis 介绍
  • 官网
  • Redis 的核心特性
    • 高性能
    • 支持多种数据结构
    • 多种持久化机制
    • 复制与高可用
    • 2.5 事务与 Lua 脚本
    • 消息队列功能
  • Redis 适用场景
  • Redis 与其他数据库对比
  • Redis 的优势与劣势
    • Redis 优势
    • Redis 劣势
  • 部署过程
    • 系统环境信息
    • 环境准备
    • 下载安装包
    • 安装
    • 配置配置文件
    • 创建日志以及数据存放目录
    • 配置开机自启
  • 结论


在 Rocky Linux 9.2 上编译安装 Redis 6.2.6

Redis 介绍

Redis(Remote Dictionary Server)是一个开源的、基于内存的、支持多种数据结构的高性能键值存储(Key-Value Store)。它通常被用作数据库、缓存消息队列,因其高性能和丰富的功能而广泛应用于各类系统架构中。

官网

Redis官网

下载软件包

在这里插入图片描述

Redis 的核心特性

高性能

  • 基于内存:所有数据存储在内存中,读写速度极快,远超传统关系型数据库。
  • 支持持久化:可以定期将数据存储到磁盘,防止数据丢失。
  • 单线程模型:利用 I/O 多路复用技术,提高并发处理能力。

支持多种数据结构

Redis 不仅仅是简单的键值存储,还支持多种丰富的数据类型:

  • String(字符串):存储普通文本、数字、二进制数据(最大 512MB)。
  • List(列表):类似链表,支持队列(FIFO)和栈(LIFO)。
  • Set(集合):无序唯一集合,支持交集、并集、差集运算。
  • Sorted Set(有序集合):带分数的集合,支持按分数排序的数据存储。
  • Hash(哈希表):键值对集合,类似于 MySQL 中的一行记录。
  • Bitmap(位图):用于存储二进制位信息(如用户签到、在线状态)。
  • HyperLogLog:用于基数统计(如统计网站独立访问 IP 数)。

多种持久化机制

Redis 提供了两种持久化方案:

  1. RDB(Redis Database)
    • 二进制快照 的形式定期将数据存入磁盘。
    • 适用于 数据恢复速度快,但可能会丢失最近的更新数据。
  2. AOF(Append-Only File)
    • 日志追加 方式记录每次写操作,能最大程度防止数据丢失。
    • 适用于 数据安全性要求高 的场景。

复制与高可用

  • 主从复制(Master-Slave Replication):支持数据的主从同步,提高数据可用性。
  • Sentinel(哨兵):提供自动故障转移监控能力,确保 Redis 服务的高可用性。
  • Cluster(集群):Redis 分布式集群模式,支持水平扩展,适用于大规模数据存储。

2.5 事务与 Lua 脚本

  • Redis 事务(Transaction) 通过 MULTIEXECWATCH 实现,但不支持回滚
  • Redis 支持 Lua 脚本,可以一次性执行多条命令,减少网络延迟。

消息队列功能

Redis 内置 发布/订阅(Pub/Sub)Stream 流式数据结构,可用于构建轻量级的消息队列。

Redis 适用场景

Redis 的高性能和灵活的数据结构使其适用于多种应用场景:

  1. 缓存(Cache)

    • 存储热点数据,加速应用访问(如数据库查询缓存、用户会话存储)。
    • 结合 LRU(Least Recently Used) 进行自动淘汰。
  2. 分布式锁

    • 通过 SETNX + EXPIRE 实现分布式锁,适用于高并发场景。
  3. 排行榜与计数器

    • 使用 Sorted Set 实现排行榜(如游戏积分榜、热搜排行榜)。
    • 使用 INCR 实现高并发计数(如 PV/UV 统计)。
  4. Session 存储

    • 使用 Redis 存储 Web 用户 Session,提高网站性能(如 Django、Flask、Spring)。
  5. 消息队列

    • 使用 List 实现简单队列(LPUSH / RPOP)。
    • 使用 Stream 处理复杂的流数据。
  6. 社交网络

    • 关注、粉丝关系(使用 Set)。
    • 新闻推送(使用 List + Sorted Set)。

Redis 与其他数据库对比

特性RedisMySQL / PostgreSQLMongoDB
数据存储内存磁盘磁盘+内存
数据结构键值对、多种数据类型关系型表结构文档存储
性能极快(100,000+ QPS)中等(几千 QPS)中等(几万 QPS)
事务支持简单事务(无回滚)完整 ACID 事务部分事务支持
扩展性高(支持分布式集群)低(分库分表)高(支持集群)
使用场景缓存、队列、实时计算关系数据存储海量文档存储

Redis 的优势与劣势

Redis 优势

  • 超高性能:所有数据在内存中操作,读写速度远超磁盘数据库。
  • 丰富数据结构:支持多种数据类型,适应多种应用场景。
  • 持久化机制:支持 RDB 和 AOF 方式,保障数据安全性。
  • 分布式架构:支持主从复制、哨兵模式、集群模式,扩展性强。

Redis 劣势

  • 内存占用高:所有数据都存储在内存中,成本较高。
  • 单线程:尽管 Redis 依赖 I/O 多路复用提升性能,但仍然是单线程模式,在 CPU 计算密集型任务上可能存在瓶颈。
  • 事务支持有限:Redis 事务不支持回滚,不适用于复杂的金融场景。

部署过程

系统环境信息

  • 操作系统:Rocky Linux 9.2 (Blue Onyx)
  • SELinux 状态Disabled(已关闭)
  • 防火墙状态firewalld 服务未启用 (inactive (dead))

环境准备

  • 创建数据目录

    mkdir -p /data/app /data/bag
    
  • 安装依赖

    dnf -y install wget gcc tar make
    

下载安装包

cd /data/bag
wget http://download.redis.io/releases/redis-6.2.6.tar.gz

安装

tar xf redis-6.2.6.tar.gz
mv redis-6.2.6 /data/app/redis
cd /data/app/redis/

在这里插入图片描述

[root@test redis]# pwd
/data/app/redis
[root@test redis]# ls -l
总用量 240
-rw-rw-r--  1 root root 33624 104  2021 00-RELEASENOTES
-rw-rw-r--  1 root root    51 104  2021 BUGS
-rw-rw-r--  1 root root  5026 104  2021 CONDUCT
-rw-rw-r--  1 root root  3384 104  2021 CONTRIBUTING
-rw-rw-r--  1 root root  1487 104  2021 COPYING
drwxrwxr-x  7 root root  4096  41 15:18 deps
-rw-rw-r--  1 root root    11 104  2021 INSTALL
-rw-rw-r--  1 root root   151 104  2021 Makefile
-rw-rw-r--  1 root root  6888 104  2021 MANIFESTO
-rw-rw-r--  1 root root 21567 104  2021 README.md
-rw-rw-r--  1 root root 93724 104  2021 redis.conf
-rwxrwxr-x  1 root root   275 104  2021 runtest
-rwxrwxr-x  1 root root   279 104  2021 runtest-cluster
-rwxrwxr-x  1 root root  1079 104  2021 runtest-moduleapi
-rwxrwxr-x  1 root root   281 104  2021 runtest-sentinel
-rw-rw-r--  1 root root 13768 104  2021 sentinel.conf
drwxrwxr-x  3 root root  4096  41 15:18 src
drwxrwxr-x 11 root root  4096 104  2021 tests
-rw-rw-r--  1 root root  3055 104  2021 TLS.md
drwxrwxr-x  9 root root  4096 104  2021 utils
[root@test redis]# 

编译

make

编译过去后,echo $?确认是否OK,再下一步

make install

完成也echo $?确认下

在这里插入图片描述

配置配置文件

mv redis.conf redis.conf-202504020011
## redis.conf
#########################################
# Redis 配置优化文件
# 适用于生产环境
########################################## 绑定地址,允许所有 IP 访问,生产环境建议改为内网 IP
bind 192.168.1.1# 保护模式,建议开启 (yes) 以增强安全性
protected-mode yes# 监听端口
port 6379# TCP 连接队列大小
tcp-backlog 511# 连接超时时间(0 代表不超时)
timeout 0# TCP 保活时间(秒),建议设大一些,避免连接被防火墙误断开
tcp-keepalive 300# 后台运行
daemonize yes# 进程 PID 文件路径
pidfile /data/app/redis/redis_6379.pid# 日志级别 (debug | verbose | notice | warning)
loglevel notice# 日志文件路径(空值表示输出到标准输出)
logfile "/data/app/redis/logs/redis-server.log"# 数据库数量(默认16个,视业务需求调整)
databases 16# 显示 Redis 启动 Logo(关闭可减少日志干扰)
always-show-logo no#########################################
# RDB 持久化
#########################################
# RDB 失败时阻止写入,避免数据损坏
stop-writes-on-bgsave-error yes
# 启用 RDB 数据压缩
rdbcompression yes
# 启用 RDB 数据校验
rdbchecksum yes
# RDB 文件名
dbfilename dump.rdb
# 关闭 RDB 删除同步文件,防止误删除
rdb-del-sync-files no
# RDB 文件存储目录,建议设为 SSD 盘
dir /data/app/redis/data/#########################################
# 复制(主从同步)
#########################################
# 允许副本在断开主库时仍然提供只读服务
replica-serve-stale-data yes 
# 副本节点只读模式
replica-read-only yes
# 关闭无磁盘同步(默认使用磁盘同步)
repl-diskless-sync no
# 无磁盘同步的延迟
repl-diskless-sync-delay 5 
# 关闭无磁盘加载
repl-diskless-load disabled
# 保持默认 TCP nodelay 配置
repl-disable-tcp-nodelay no
# 副本优先级(越小越容易成为主库)
replica-priority 100 #########################################
# 内存管理
#########################################
# 默认不限制内存,可根据业务需求调整
maxmemory 0
# 不驱逐数据,可改为 allkeys-lru
maxmemory-policy noeviction
# 关闭惰性删除,避免额外 CPU 开销
lazyfree-lazy-eviction no 
# 关闭惰性过期
lazyfree-lazy-expire no 
# 关闭惰性删除
lazyfree-lazy-server-del no # 关闭副本惰性清理
replica-lazy-flush no# 关闭 OOM 调整
oom-score-adj no 
# 仅在 OOM 保护时启用
oom-score-adj-values 0 200 800#########################################
# AOF 持久化
#########################################
# 启用 AOF 持久化
appendonly yes 
# AOF 文件名
appendfilename "appendonly.aof" 
# 每秒同步一次,性能和安全的折中方案
appendfsync everysec
# 重写时是否关闭同步
no-appendfsync-on-rewrite no
# 触发 AOF 重写的比例
auto-aof-rewrite-percentage 100 
# 触发 AOF 重写的最小大小
auto-aof-rewrite-min-size 64mb
# 允许加载截断的 AOF
aof-load-truncated yes# AOF 兼容 RDB 头部,减少重启时间
aof-use-rdb-preamble yes 
#########################################
# 性能优化
#########################################
# 调高 Hz 频率,提高响应速度
hz 50
# 动态调整 Hz
dynamic-hz yes 
# AOF 重写时增量同步
aof-rewrite-incremental-fsync yes
# RDB 保存时增量同步
rdb-save-incremental-fsync yes # 启用 jemalloc 线程优化内存管理
jemalloc-bg-thread yes#########################################
# 限制与监控
#########################################
# 慢查询阈值(微秒)
slowlog-log-slower-than 10000
# 慢查询日志最大条数
slowlog-max-len 128 
# 关闭延迟监控
latency-monitor-threshold 0 
# 关闭 key 事件通知
notify-keyspace-events "" 
# 普通客户端无限制
client-output-buffer-limit normal 0 0 0
# 副本节点限制
client-output-buffer-limit replica 256mb 64mb 60
# PubSub 限制
client-output-buffer-limit pubsub 32mb 8mb 60#########################################
# 其他参数
#########################################
# RDB 触发条件
save 900 1 300 10 60 10000 
# TCP 连接队列大小
tcp-backlog 511
# TCP 保活时间(秒)
tcp-keepalive 300

创建日志以及数据存放目录

mkdir -p /data/app/redis/data /data/app/redis/logs

配置开机自启

vim /etc/systemd/system/redis.service
[Unit]
Description=redis-server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /data/app/redis/redis.conf
PrivateTmp=true[Install]
WantedBy=multi-user.target
systemctl enable redis --now # 启动并设置开机自启

在这里插入图片描述
版本查看

[root@test bag]# redis-server -v
Redis server v=6.2.6 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=cd4da9562e7759a9
[root@test bag]# 

结论

至此,我们已成功在 Rocky Linux 9.2编译安装 Redis 6.2.6,并使用 systemd 进行管理。你可以根据需求进一步优化 Redis 配置,例如调整 maxmemory 以限制 Redis 占用的内存大小,或者启用 密码认证 以提高安全性。

http://www.dtcms.com/wzjs/106381.html

相关文章:

  • 自己做网站要办手续吗微营销推广方案
  • 佛山网站开发百度seo价格查询
  • 哪里做外贸网站有没有帮忙推广的平台
  • 做软件赚钱的网站有哪些百度在线客服
  • 宁波网站建设网站推广一般收多少钱
  • 做网站挣钱来个好心人指点一下呗网站排名查询平台
  • 多种语言网站怎么做广州白云区新闻头条最新消息今天
  • 一些做设计素材的网站aso关键词排名优化是什么
  • 大连网站建设那家好seo推广代运营
  • 网站一级页面二级页面怎么做湖南竞价优化哪家好
  • 怎样建设一个好的网站seo技术培训广东
  • wordpress申请网站吗兰州网络推广的平台
  • 一份电子商务网站建设规划书企业营销策划方案范文
  • 建设隔离变压器移动网站营销广告文案
  • 佛山新网站建设如何免费二级域名分发网站源码
  • 怎么做网站分站黄金网站软件app大全下载
  • 尼尔的h版是那个网站做的杭州上城区抖音seo如何
  • 一级造价工程师含金量北京官网seo
  • 自己做网站难不难谷歌搜索为什么用不了
  • 品牌创意型网站开发网站建设多少钱
  • 微信上做网站编辑如何制作简易网站
  • 咖啡网站设计建设推广网络公司
  • 公司品牌网站建设价格线上营销推广公司
  • 杭州市建设网官网网站内容优化怎么去优化呢
  • 做网站后端要学什么推广平台有哪些?
  • 网站开发算互联网公司吗友情链接交换网址大全
  • 怎么给网站做关键词如何宣传网站
  • 客村网站建设热门网站排名
  • 唐山建网站网站seo优化免费
  • 外贸网站建设公司服务要怎么做网络推广