docker配置redis插件

news2025/1/30 16:06:39

从页面上下载对应的redis.conf文件

放入redis下的conf文件夹,作为通用的conf文件。

将redis.conf文件拷贝到6390/conf文件夹下

[root@hao /usr/local/software/redis/conf]# cp redis.conf /usr/local/software/redis/6390/conf

配置6390的redis.conf文件

配置插件

布隆过滤器插件,限流插件【令牌桶】

先启动redis_6390

docker run -it \
--name redis_6390 \
--privileged \
-p 6390:6379 \
--network wn_docker_net \
--ip 172.18.12.19 \
--sysctl net.core.somaxconn=1024 \
-e TIME_ZONE="Asia/Shanghai" -e TZ="Asia/Shanghai" \
-v /usr/local/software/redis/6390/conf/redis.conf:/usr/local/etc/redis/redis.conf \
-v /usr/local/software/redis/6390/data/:/data \
-v /usr/local/software/redis/6390/log/redis.log:/var/log/redis.log \
-d redis \
/usr/local/etc/redis/redis.conf

插件安装

下载插件

在linux中解压插件

[root@hao /usr/local/software/redis/conf]# tar -zxvf redis-cell-v0.3.1-x86_64-unknown-linux-gnu.tar.gz
libredis_cell.d
libredis_cell.so

拷贝libredis_cell.so文件到容器中

[root@hao /usr/local/software/redis/conf]# docker cp libredis_cell.so redis_6390:/usr/local/etc/redis
Successfully copied 6.77MB to redis_6390:/usr/local/etc/redis

修改配置文件

令牌桶
 loadmodule /usr/local/etc/redis/libredis_cell.so

分类/redis/redisCell令牌桶_1.png  0 → 100644

检查插件是否安装成功

使用:

[root@hao /usr/local/software/redis/6390/log]# docker exec -it redis_6390 bash
root@6066a010f59f:/data# redis-cli
127.0.0.1:6379> CL.THROTTLE older:activity 99 10 100 5
1) (integer) 0
2) (integer) 100
3) (integer) 95
4) (integer) -1
5) (integer) 51

/* 请求:
 * 1.最大的突发请求
 * 2,3.每【3】秒存入【2】个令牌
 * 4.本次申请多少个令牌
 */

/* 结果
 * 1.当前请求是否被允许,0表示允许,1表示不允许;2.
 * 2.令牌桶的最大容量,令牌桶中令牌数的最大值【为最大突发请求数 + 1】
 * 3.令牌桶中当前的令牌数
 * 4.如果被拒绝,需要多长时间后在重试,如果当前被允许则为-1
 * 5.多长时间后令牌桶中的令牌会满
 */
布隆过滤器
  • 下载bloom filter 并上传到linux

  • bloom filter作者未编译打包,需要自行编译

    • 需提前安装gcc

      [root@localhost bf]# yum -y install gcc
      已加载插件:fastestmirror, langpacks
      Determining fastest mirrors
       * base: mirrors.ustc.edu.cn
       * extras: mirrors.ustc.edu.cn
       * updates: mirrors.ustc.edu.cn
      base
      [root@localhost bf]# gcc --version
      gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
      Copyright © 2015 Free Software Foundation, Inc.
      本程序是自由软件;请参看源代码的版权声明。本软件没有任何担保;
      包括没有适销性和某一专用目的下的适用性担保。
      
  • 解压文件

    tar -zxvf RedisBloom-2.2.4.tar.gz
    
  • 进入文件夹,查看文件,里面有Makefile文件

    分类/redis/redisBloomFilter_1.png  0 → 100644

  • 输入make进行编译

    分类/redis/redisBloomFilter_2.png  0 → 100644

    分类/redis/redisBloomFilter_3.png  0 → 100644

  • 将编译好的插件拷贝到docker的redis容器中

     docker cp redisbloom.so redis_6390:/usr/local/etc/redis
    

    分类/redis/redisBloomFilter_4.png  0 → 100644

  • 修改配置文件

      43 # loadmodule /path/to/my_module.so
      44 # loadmodule /path/to/other_module.so
      45 
      46 loadmodule /usr/local/etc/redis/redisbloom.so
    
  • 重启redis

     docker restart redis_6390
    
  • 查看日志

    分类/redis/redisBloomFilter_5.png  0 → 100644

  • 验证是否安装成功

    root@33918dd9ffd7:/data# redis-cli
    127.0.0.1:6379> bf.add who me
    (integer) 1
    127.0.0.1:6379> bf.exists who me
    (integer) 1
    127.0.0.1:6379> bf.exists who abc
    (integer) 0
    

完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1279081.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

云时空社会化商业 ERP 系统 service SQL 注入漏洞复现

0x01 产品简介 时空云社会化商业ERP(简称时空云ERP) ,该产品采用JAVA语言和Oracle数据库, 融合用友软件的先进管理理念,汇集各医药企业特色管理需求,通过规范各个流通环节从而提高企业竞争力、降低人员成本…

[c]比较月亮大小

本题的难点就是分情况讨论 #include<stdio.h> int main() {int n;scanf("%d",&n);int arr2[n];int p;for(int m0;m<n-1;m){scanf("%d",&arr2[m]);//输入n个数保存到数组}if(n1)//当输入一个数据时&#xff0c;输入0&#xff0c;可以判断…

微信小程序 内置地图及打开外部地图导航

1. 微信小程序 内置地图及打开外部地图导航 1.1 说明 用户点击通过目的地经纬度打开地图展示坐标点&#xff0c;然后可以选择外部安装的地图app进行导航搜索。    scale“4” 缩放比例&#xff0c;缩放级别&#xff0c;取值范围为3-20。 1.2. wxml代码 <button type&qu…

leetcode:225. 用队列实现栈

一、题目 链接&#xff1a;225. 用队列实现栈 - 力扣&#xff08;LeetCode&#xff09; 函数原型&#xff1a; typedef struct { } MyStack; MyStack* myStackCreate() void myStackPush(MyStack* obj, int x) int myStackPop(MyStack* obj) int myStackTop(MyStack* obj) …

CMake构建工具

文章目录 CMake构建工具1.概念2.mk文件3.CmakeList4.预编译 CMake构建工具 1.概念 Android构建原始库的工具&#xff0c;对mk构建工具封装&#xff0c;还是makefile。 加载lib库 2.mk文件 //call调用test-dir这个方法&#xff0c;返回mk文件的路径&#xff0c;LOCAL_PATH这…

计算机组成原理笔记——存储器(静态RAM和动态RAM的区别,动态RAM的刷新, ROM……)

■ 随机存取存储器 ■ 1.随机存取存储器&#xff1a;按存储信息的原理不同分为&#xff1a;静态RAM和动态RAM 2.静态RAM&#xff08;SRAM&#xff09;&#xff1a;用触发器工作原理存储信息&#xff0c;但电源掉电时&#xff0c;存储信息会丢失具有易失性。 3.存储器的基本单元…

C#网络编程(System.Net命名空间和System.Net.Sockets命名空间)

目录 一、System.Net命名空间 1.Dns类 &#xff08;1&#xff09;示例源码 &#xff08;2&#xff09;生成效果 2.IPAddress类 &#xff08;1&#xff09;示例源码 &#xff08;2&#xff09;生成效果 3.IPEndPoint类 &#xff08;1&#xff09; 示例源码 &#xff0…

五、ZooKeeper的shell操作

目录 1、客户端连接 2、shell基本操作 2.1 操作命令

分享一个判断曲线的趋势的Demo

需求背景 最近在处理数据&#xff0c;横坐标是时间&#xff0c;纵坐标是价格&#xff0c;需要判断一段时间内&#xff0c;由这些点绘制成的曲线的走势&#xff0c;比如趋势朝上&#xff0c;趋势朝下&#xff0c;水平调整这三种趋势。尝试了不少方法&#xff0c;下面这个效果还…

数据结构算法-冒泡排序算法

引言 虽然选择排序好用 &#xff0c;但有点问题 也就是频繁找最大值下标 放到 未排序的后面 因为每次需要扫描整个未排序序列&#xff0c;找到最大值或最小值的下标&#xff0c;并将其交换到未排序序列的最后一个位置。这样做的问题在于&#xff0c;在后面的迭代中&#xff0c…

Vue安装及环境配置详细教程

一、下载node.js 访问node.js官网&#xff1a;Download | Node.js 选择Windows Installer (.msi)的64-bit进行下载。 在E盘新建一个文件夹&#xff0c;取名为nodejs&#xff0c;也可以在其他盘符新建。 在安装node.js时&#xff0c;点击Change...&#xff0c;进行切换盘符安…

【UE】UEC++获取屏幕颜色GetPixelFromCursorPosition()

目录 【UE】UE C 获取屏幕颜色GetPixelFromCursorPosition() 一、函数声明与定义 二、函数的调用 三、运行结果 【UE】UE C 获取屏幕颜色GetPixelFromCursorPosition() 一、函数声明与定义 创建一个蓝图方法库方法 GetPixelFromCursorPosition()&#xff0c;并给他指定UF…

循环队列的结构设计和基本操作的实现(初始化,入队,出队,判空,获取长度,清空,销毁)

目录 1.队列的定义 2.循环队列的设计图示 3.循环队列的结构设计 4.循环队列的实现 5.循环队列的总结 1.队列的定义 和栈相反,队列(queue)是一种先进先出(first in first out,缩写为FIFO)的线性表.它只允许在表的一端进行插入,而在另一端删除元素. 在队列中,允许插入的一…

[二分查找]LeetCode2009 :使数组连续的最少操作数

本文涉及的基础知识点 二分查找算法合集 作者推荐 动态规划LeetCode2552&#xff1a;优化了6版的1324模式 题目 给你一个整数数组 nums 。每一次操作中&#xff0c;你可以将 nums 中 任意 一个元素替换成 任意 整数。 如果 nums 满足以下条件&#xff0c;那么它是 连续的 …

【动态规划】LeetCode-91.解码方法

&#x1f388;算法那些事专栏说明&#xff1a;这是一个记录刷题日常的专栏&#xff0c;每个文章标题前都会写明这道题使用的算法。专栏每日计划至少更新1道题目&#xff0c;在这立下Flag&#x1f6a9; &#x1f3e0;个人主页&#xff1a;Jammingpro &#x1f4d5;专栏链接&…

【计算机网络笔记】802.11无线局域网

系列文章目录 什么是计算机网络&#xff1f; 什么是网络协议&#xff1f; 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能&#xff08;1&#xff09;——速率、带宽、延迟 计算机网络性能&#xff08;2&#xff09;…

【海思SS528 | VO】MPP媒体处理软件V5.0 | VO模块编程总结

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…

<DB2>《AIX服务器DB2数据库裸设备表空间扩容方案》

《AIX服务器DB2数据库裸设备表空间扩容方案》 1 表空间状态查看1.1 连接数据库&#xff08;实例用户操作&#xff09;1.2 查看表空间剩余&#xff08;实例用户操作&#xff09;1.3 查看所属表空间的容器属性&#xff08;实例用户操作&#xff09; 2 VG状态和LV状态查看2.1 查看…

Python 爬虫 之scrapy 框架

文章目录 常用的命令开始爬虫请求与响应让控制台只输出想要的信息创建一个py 文件来帮忙运行爬虫 工作原理图实战 常用的命令 Scrapy是一个用于爬取网站数据的Python框架&#xff0c;以下是一些常用的Scrapy命令&#xff1a; 开始的时候 用 cd 进入你想创建scrapy 的文件夹 &a…

EasyExcel写入多个sheet

直接上代码&#xff1a; public static void main(String[] args) {// 设置excel工作簿ExcelWriter excelWriter EasyExcel.write("F:\\excel\\a.xls").build();List<User> userList new ArrayList<>();userList.add(new User("lisi", "…