【docker】docker-compose实战之Redis的安装与配置

唠嗑部分

Redis,NoSql菲关系型数据库,NoSql = Not Only Sql(不仅仅是Sql),也解释为non-relational(非关系型数据库),在NoSql数据库中数据是无联系的,无关系的,数据的结构是松散的,可变的

问题一、关系型数据库的瓶颈?

1、无法应对每秒上万次的数据请求,无法处理大量集中式的高并发操作

2、表中储存的数据有限,横向扩展能力有限(Mysql横向255),纵向数据可承受能力有限,随着数据的增多,读写速度会下降

3、无法简单的通过增加硬件、服务街店来提高系统性能

4、关系型数据库大多是收费的,对硬件的要求较高,软件和硬件的成本花费较大

问题二、在实际项目中Redis一般会用来做什么?

1、做缓存,在许多对客的高并发场景下,都会使用缓存技术,而Redis每秒可抗10W并发,是不错的选择

2、分布式数据共享,举个例子昂,集群环境下用户认证信息的共享-token

3、做分布式锁,解决分布式环境下jvm锁失效的问题

4、做全局唯一ID,int类型,incrby,利用原子性

5、抽奖,自带一个随机获取值

6、热搜排行榜,zset类型提供一个分数,可用作热搜次数

7、点赞、签到、打卡功能设计

8、商品购物车的设计,string、hash

9、接口限流

10、…

既然有这么多功能,那必须要会安装了

操作步骤

在/root目录下创建如下目录

docker-compose-redis/data(数据持久化挂载目录),docker-compose-redis/conf(自定义配置挂载目录)

cd /root
mkdir -p docker-compose-redis/{data,conf}

授权(避免持久化数据目录权限不足而失败)

chmod -R 777 docker-compose-redis/data

创建自定义的配置文件redis.conf

vim docker-compose-redis/conf/redis.conf

配置如下

protected-mode no
port 6379
daemonize no
requirepass 123456
appendonly yes

在docker-compose-redis目录下创建docker-compose.yml文件,内容如下

version: "3.1"
services:
  mysql1:
    container_name: docker-compose-redis
    image: redis:5
    ports:
      - "6379:6379"
    volumes:
      - /root/docker-compose-redis/conf/:/etc/redis/
      - /root/docker-compose-redis/data:/data
    command: ["redis-server","/etc/redis/redis.conf"]

在docker-compose-redis目录下执行如下命令,运行容器

docker-compose up -d

image-20230301112332671

测试&结语

使用Windows命令行或RDM连接redis,我的ip是10.10.10.10

【docker】docker-compose实战之Redis的安装与配置_第1张图片

到此,docker-compose安装Redis就结束了

  • 关于docker章节,后续我们还会更新常用软件的安装,敬请期待
  • 有关SpringBoot整合Redis的内容,后续也会更新

你可能感兴趣的:(Java全栈开发,docker-compose,软件安装,redis,docker,数据库)