docker-compose中的redis-stack详解
作者:catoop
Redis是一个开源的内存数据结构存储系统,主要用于数据库、缓存和消息代理,支持多种数据结构,RedisStack则基于Redis,提供栈的操作及扩展功能,适合复杂数据处理,本文给大家介绍docker-compose中的redis-stack,感兴趣的朋友跟随小编一起看看吧
介绍
Redis和Redis Stack的主要区别在于功能和适用场景
功能差异:
- Redis是一个开源的内存数据结构存储系统,主要用作数据库、缓存和消息代理,支持多种数据结构如字符串、列表、集合等,并提供丰富的操作命令,如存储、读取、删除等1。
- Redis Stack则是基于Redis的数据结构栈实现,它将Redis的列表数据结构与一些自定义操作命令结合起来,提供了栈的常用操作,并扩展了Redis的功能,支持更复杂的用例,如数据查询、图形数据结构和实时流处理等12。
适用场景差异:
- Redis适合用于需要高性能的简单数据访问的应用场景2。
- Redis Stack则更适合用于需要复杂数据处理和多种数据类型的应用场景,如对搜索、文档、图形、时间序列等进行数据建模23。
安装和配置:
- 安装Redis通常通过命令行工具进行,而Redis Stack可以通过Docker方式进行安装4。
- 使用Redis时,可以通过Redis CLI或编程语言连接并进行基本操作,而Redis Stack提供了更丰富的功能和更好的开发人员体验34。
组成和扩展性:
- Redis Stack是一组软件套件,主要由Redis Stack Server、RedisInsight和Redis Stack客户端SDK组成,其中Redis Stack Server包含了Redis, RedisSearch, RedisJSON, RedisGraph, RedisTimeSeries和RedisBloom等模块。
综上所述,Redis和Redis Stack的主要区别在于功能、适用场景、安装配置方式以及提供的扩展性上。Redis Stack在Redis的基础上提供了更多的功能和更好的用户体验,适合需要复杂数据处理的应用场景。
基于Docker启动服务
创建挂载目录 data
和 friso
,然后然后将 friso.ini
及 dict
字典文件放到 friso
文件夹中。
其中 friso.ini
文件可以从gitee上获取,只需要更改其中的字典路径即可。
friso.lex_dir = /friso/dict/UTF-8/
docker-compose.yml 文件中的内容如下:
redis-stack: image: redis/redis-stack:7.2.0-v9 container_name: redis-stack privileged: true networks: - middleware volumes: - ./redis-stack/data:/data - ./redis-stack/friso:/friso environment: TZ: Asia/Shanghai REDIS_ARGS: "--requirepass redisstack123456" REDISEARCH_ARGS: "MAXSEARCHRESULTS 10000 MAXAGGREGATERESULTS 10000 FRISOINI /friso/friso.ini" ports: - 6379:6379 - 8001:8001 logging: driver: "json-file" options: max-size: "100m" max-file: "20"
Redis-Stack 的默认配置文件在容器中的
/etc/redis-stack.conf
位置,如果需要修改,可以挂在出来。
Friso 用于 redissearch 分词,如果你不需要可以去除与它相干的配置和参数。
服务启动后,可以通过浏览器访问 8001
端口来查看控制台UI界面。
到此这篇关于docker-compose中的redis-stack详解的文章就介绍到这了,更多相关docker-compose redis-stack内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!