千家信息网

redis微应用镜像怎么用

发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,这篇文章主要介绍了redis微应用镜像怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。suma redis 微应用镜像是基于 re
千家信息网最后更新 2024年11月28日redis微应用镜像怎么用

这篇文章主要介绍了redis微应用镜像怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

suma redis 微应用镜像是基于 redis 5.0 源代码进行二次开发的一个redis 微容器集群镜像。 在原有reids 命令的基础上增加了suma apollo微容器相关的命令

  1. sumavlib.suma_ci_task

  2. sumavlib.suma_keep_alive

  3. sumavlib.suma_try_leader

  4. sumavlib.suma_vip_list

  5. sumavlib.suma_vip_register

  6. sumavlib.suma_vip_server_list

  7. sumavlib.suma_vip_kill

  8. sumavlib.suma_vip_reset

  9. sumavlib.suma_diamond_publish

  10. sumavlib.suma_diamond_list

一. 原语API概览

1 选举leader

 sumavlib.suma_try_leader   #1 #2
  • 参数 1 master_vipkey 由owner和业务id + "master" 构成

  • 参数 2 当前主机的vip地址

  • 主返回1 , 从返回 0

例 sumavlib.suma_try_leader wangwenbo_test_master

2 获取主机VIP列表

sumavlib.suma_vip_list #1 #2
  • 参数1 master vip

  • 参数2 查询串

  • 返回 活跃主机vip列表

根据在线主机会根据存活状态,对vip进行lru缓存, 如果失联则会被系统逐出。

例 sumavlib.suma_try_leader wangwenbo_test_master suma*

3 激活主机状态

sumavlib.suma_keep_alive #1 #2 #3
  • 参数1 master_vipkey 由owner和业务id + "master" 构成

  • 参数2 当前主机的vip地址

  • 参数3 vip 列表索引模式

  • 返回 主返回vip 列表 , 从返回主vip

例 sumavlib.suma_keep_alive vip vip vip*

4 强制摘除某个主机流量

sumavlib.suma_vip_kill #channel #vip
  • 参数1 订阅的频道id

  • 参数2 需要摘除的主机vip

  • 返回 成功返回1 失败返回0

例 sumavlib.suma_vip_kill subid vip

这个api是私有的原语, 只能摘除掉该vip对应主机的流量。

5 强制恢复某个主机流量

sumavlib.suma_vip_reset #channel #vip
  • 参数1 订阅的频道id

  • 参数2 需要摘除的主机vip

  • 返回 成功返回1 失败返回0

例 sumavlib.suma_vip_reset subid vip

这个api是私有的原语, 恢复vip对应主机的流量。

6 订阅的频道发布

sumavlib.suma_message_publish #channel #cmd json
  • 参数1 订阅的频道id

  • 参数2 需要处理的json命令

  • 返回 成功返回1 失败返回0

例 sumavlib.suma_message_publish subid cmd

这个api是私有的原语, 所有该owner下的业务id一致的vip 主机都会收到广播。

7 diamond配置发布

sumavlib.suma_diamond_publish #channel #cmd json #key
  • 参数1 订阅的频道id

  • 参数2 需要存储的key

  • 参数3 需要存储的value

  • 返回 成功返回1 失败返回0

例 sumavlib.suma_diamond_publish subid key value

这个api是私有的原语, 所有该owner下的业务id一致的vip 主机都会收到广播。

sumavlib.suma_diamond_publish owner_idbuiness_idchannel key value

8 diamond配置索引列表

sumavlib.suma_diamond_list #1
  • 参数1 非阻塞搜索模式

  • 返回 索引的list

例 sumavlib.suma_diamond_list pp*

该非阻塞索引搜索模式是无序的迭代, 最大数量100。

9 租户vip列表

sumavlib.suma_vip_server_list #1
  • 参数1 非阻塞搜索模式

  • 返回 索引的list

例 sumavlib.suma_vip_server_list pp*

10 租户vip注册

sumavlib.suma_vip_register_list #1
  • 参数1 非阻塞搜索模式

  • 返回 索引的list

例 sumavlib.suma_diamond_list pp*

启动

sh rm_all_container.sh ip=`cat /home/admin/local_ip`docker run -it -v /home/admin/logs2:/home/admin/logs  \--env LOCAL_IP="$ip" \--env CONTAINER_TYPE="docker" \--env APOLLO_OWNER_ID="agent.zy" \--env APOLLO_BUINESS_ID="test" \--env APOLLO_PORT=9001 \-p 9002:10082 -p 9001:8090 \--rm  registry-1.docker.io/459733390/suma_apollo_redis:latest

suma redis 镜像微化后尺寸缩减到15m ,各个租户完全隔离, 可使用suma apollo微容器进行容器管理和动态扩缩。

可以使用镜像源管理镜像,也可以使用压缩包的方式使用, 这个微容器的镜像依然是符合oci标准的容器, 所以只要目标机上存在docker软件, 我们就可以动态进行部署,所以基于suma apollo 微容器引擎的镜像都可以达到1秒内在线部署完成。

目标是租户的资源(redis,vcpu,应用, 数据等)隔离, 租户可以在线 弹性购买资源,并且组装的到租户自己的业务逻辑链路里。

感谢你能够认真阅读完这篇文章,希望小编分享的"redis微应用镜像怎么用"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

0