• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

message-pipe: 基于`Redis`实现的分布式消息顺序消费管道。

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

message-pipe

开源软件地址:

https://gitee.com/minbox-projects/message-pipe

开源软件介绍:

Message Pipe

基于Redis实现的分布式消息顺序消费管道。

CI Build

I. 什么是Message Pipe?

Message Pipe是基于Redis实现的顺序消息管道,由于内部引入了Redisson分布式锁所以它是线程安全的,多线程情况下也会按照写入管道的顺序执行消费。

Message Pipe采用ClientServer概念进行设计,内部通过grpc-netty来建立消息通道相互通信的长连接,消息的分发由Server负责,而每一个管道内的消息在分发时会通过LoadBalance(负载均衡)的方式来获取在线的Client信息并向Client顺序发送消息。

II. 架构图

...

III. 特性

  • 自动注册
  • 心跳检查
  • 消息分发
  • 顺序消费
  • 读写分离
  • 线程安全
  • 负载均衡
  • 自动剔除

IIII. 快速上手

为了快速上手,提供了message-pipe使用的示例项目,项目源码:https://github.com/minbox-projects/message-pipe-example

4.1 安装Redis

由于message-pipe基于Redis实现,所以我们首先需要在本机安装Redis,下面是使用Docker方式安装步骤:

# 拉取Redis镜像docker pull redis# 创建一个名为"redis"的后台运行容器,端口号映射宿主机6379docker run --name redis -d -p 6379:6379 redis

4.2 查看Redis数据

# 运行容器内命令docker exec -it redis /bin/sh# 运行Redis客户端redis-cli# 选择索引为1的数据库select 1# 查看全部的数据keys *

4.3 启动示例项目

# 下载源码git clone https://github.com/minbox-projects/message-pipe-example.git# 进入项目目录cd message-pipe-example# 运行Client与Server合并示例项目cd client-server-merge# 运行项目mvn spring-boot:run

V. License

message-pipe采用Apache2开源许可进行编写。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap