文章目录
- 引言:
- 移动云:云擎未来,智信天下
- 一、什么是Redis?
- 二、Redis 与其他 key-value 存储有什么不同?
- Redis 架构
- 三、环境准备
- 四、部署流程
- 使用Redis Desktop Manager远程连接操作数据库
- 总结与未来展望
- 云擎未来,智信天下
引言:
随着技术的不断进步,移动云服务不仅重塑了我们的工作方式和生活习惯,还为各行各业带来了前所未有的机遇。它使得数据和应用能够跨越物理界限,实现随时随地的访问和处理,极大地提高了工作效率和灵活性。
移动云:云擎未来,智信天下
一、什么是Redis?
Redis是一个完全开源免费的高性能(NOSQL)的key-value数据库。它遵守BSD协议,使用ANSI C语言编写,并支持网络和持久化。Redis拥有极高的性能,每秒可以进行11万次的读取操作和8.1万次的写入操作。它支持丰富的数据类型,包括String、Hash、List、Set和Ordered Set,并且所有的操作都是原子性的。此外,Redis还提供了多种特性,如发布/订阅、通知、key过期等。Redis采用自己实现的分离器来实现高速的读写操作,效率非常高。Redis是一个简单、高效、分布式、基于内存的缓存工具,通过网络连接提供Key-Value式的缓存服务。
Redis可以通过配置文件设置密码参数,这样客户端连接到Redis服务就需要密码验证,从而提高Redis服务的安全性。
Redis有三个主要特点,使它优越于其他键值数据存储系统:
- 首先,Redis将其数据库完全保存在内存中,仅使用磁盘进行持久化。这使得Redis具有很高的读写性能。
- 其次,Redis支持多种数据结构,不仅仅支持简单的key-value类型的数据,还提供了list、set、zset和hash等更复杂的数据结构的存储。
- 最后,Redis支持数据的备份,可以通过master-slave模式进行数据备份,增加了数据的可靠性和安全性。
Redis还可以用于内存存储和持久化,支持异步将内存中的数据写到硬盘上,同时不影响继续服务取最新N个数据的操作。此外,Redis还可以用于模拟类似于HttpSession这种需要设定过期时间的功能,发布和订阅消息系统,以及定时器和计数器等功能。
二、Redis 与其他 key-value 存储有什么不同?
- Redis 比起其它键值类数据库,值可以包含更复杂的数据类型,并且在数据类型上定义原子操作。Redis 数据类型与基本数据结构密切相关,并直接向程序员公开,无需额外的抽象层。
- Redis 运行在内存中但是可以持久化到磁盘,因此它代表了一种不同的权衡,即在数据集不能大于内存的限制下实现非常高的写入和读取速度。内存数据库的另一个优点是,与磁盘上的相同数据结构相比,复杂数据结构的内存表示更易于操作,因此 Redis 可以做很多事情而内部复杂性很小。同时,因 RDB 和 AOF 两种磁盘持久化方式是不适合随机访问,因为它们是顺序写入的。
Redis 架构
Redis 主要由有两个程序组成:
- Redis 客户端 redis-cli
- Redis 服务器 redis-server
三、环境准备
移动云云服务器一台:
- 规格配置
t2.large.2 | 2 核 | 4G - 镜像
Ubuntu 18.04 64位 - 系统盘
性能优化型 | 40G
四、部署流程
1,更新系统源
如果系统本身自带得镜像地址,服务器在国外,下载速度会很慢,可以打开 /etc/apt/sources.lis 替换为国内得镜像源。
sudo apt update
sudo apt upgrade -y
2、安装Docker,
apt-get install docker.io -y
# 设置开机启动并启动docker
sudo systemctl start docker
sudo systemctl enble docker
3、 下载Redis镜像
命令 | 描述 |
---|---|
docker pull redis | 下载最新版Redis镜像 (其实此命令就等同于 : docker pull redis:latest ) |
docker pull redis:xxx | 下载指定版本的Redis镜像 (xxx指具体版本号) |
4、检查当前所有Docker下载的镜像
5、 创建Redis配置文件
在部署 Docker 容器中的 Redis 服务时,在 /etc/redis 目录创建 redis.conf 配置文件。如果这个文件不存在,Docker 可能会错误地将 redis.conf 解释为一个目录,而不是一个文件,从而导致配置错误和启动失败。
## 创建目录
mkdir -p /home/redis/conf
## 创建文件
touch /home/redis/conf/redis.conf
6、创建Redis容器并启动
# 执行命令:
docker run --name redis -p 6379:6379 \
-v /home/redis/data:/data \
-v /home/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis:bullseye redis-server /etc/redis/redis.conf
命令说明
命令 | 描述 |
---|---|
–name redis | 启动容器的名字 |
-d | 后台运行 |
-p 6379:6379 | 将容器的 6379(后面那个) 端口映射到主机的 6379(前面那个) 端口 |
–restart unless-stopped | 容器重启策略 |
-v /home/redis/data:/data | 将Redis储存文件夹挂在到主机 |
-v /home/redis/conf/redis.conf:/etc/redis/redis.conf | 将配置文件夹挂在到主机 |
-d redis:bullseye | 启动哪个版本的 Redis (本地镜像的版本) |
redis-server /etc/redis/redis.conf | Redis 容器中设置 redis-server 每次启动读取 /etc/redis/redis.conf |
–appendonly yes | 在Redis容器启动redis-server服务器并打开Redis持久化配置 |
\ | shell 命令换行 |
注意 : 命令中所有 冒号 前面的是主机配置 , 冒号 后面的是redis容器配置 。
–restart unless-stopped : 在docker重启时重启当前容器。但不包含docker重启时已停止的容器。
7、查看Redis是否运行
### 查看Docker运行中的容器
docker ps
docker ps | grep redis
8、 进入Redis容器
### 通过 Docker 命令进入 Redis 容器内部
docker exec -it redis /bin/bash
### 进入 Redis 控制台
redis-cli
使用Redis Desktop Manager远程连接操作数据库
总结与未来展望
在中国移动云产业的快速发展中,未来移动云产品的展望是多维度且充满挑战与机遇的。随着5G技术的普及和云计算服务的成熟,结合中国庞大的用户基数和活跃的互联网生态,移动云产品将迎来更广阔的应用场景和更深层次的技术创新。
未来几年,随着云计算技术的不断成熟和应用场景的不断拓展,企业对云服务的需求将持续增长。云计算将渗透到更多行业,帮助企业实现数字化转型,提升业务效率和竞争力。一系列针对特定行业需求的解决方案将陆续推出,这些解决方案将充分利用云计算的弹性、可扩展性和智能化特点,帮助企业解决实际问题,优化业务流程,提高运营效率。
然而,云计算行业的发展也面临着一些挑战。数据安全、隐私保护和网络攻击等问题日益突出,给云服务提供商带来了不小的压力。为了应对这些挑战,云服务提供商需要不断加强技术研发,提高服务的安全性和稳定性。通过采用先进的加密技术、建立完善的安全管理体系和提升应急响应能力,可以有效降低安全风险,保障用户数据的安全。
同时,随着5G、物联网、人工智能等新技术的发展,云计算行业将迎来更多的发展机遇。5G技术的高速率、低时延特点将为云计算提供更加强大的网络支持,使得云服务能够更好地满足实时性要求高的应用场景。物联网技术的发展将使得越来越多的设备接入云端,产生海量的数据,为云计算提供了丰富的应用场景和数据资源。人工智能技术的应用将使得云计算更加智能化,为用户提供更加个性化、精准的服务。