首页 文章 精选 留言 我的

精选列表

搜索[服务],共10000篇文章
优秀的个人博客,低调大师

message-pipe v1.0.1 发布,支持 Nacos 服务发现

Message Pipe 基于Redis实现的分布式消息顺序消费管道。 GitHub地址:https://github.com/minbox-projects/message-pipe Gitee地址:https://gitee.com/minbox-projects/message-pipe I. 什么是Message Pipe? Message Pipe是基于Redis实现的顺序消息管道,由于内部引入了Redisson分布式锁所以它是线程安全的,多线程情况下也会按照写入管道的顺序执行消费。 Message Pipe采用Client、Server概念进行设计,内部通过grpc-netty来建立消息通道相互通信的长连接,消息的分发由Server负责,而每一个管道内的消息在分发时会通过LoadBalance(负载均衡)的方式来获取在线的Client信息并向Client顺序发送消息。 II. 更新日志 ✨New Features [#39] Client通过 "Cglib动态代理" 的方式实现动态绑定管道 [#40] Client/Server 通过正则表达式进行匹配 "pipeName" [#41] 禁用Server接收注册请求后根据每一个"Pipe Name"创建消息管道 [#47] 使用Jackson代替fastjson转换实体与json字符串之间的相互转换方式 [#51] MessageProcessor新增正则表达式方式处理消息,并为每个匹配的表达式管道建立一个Porxy代理类 [#59] Server启动时自动加载Redis内的消息管道列表,并自动创建MessagePipe实例 [#64] 重构Client连接Server的实现方式,新增支持Nacos NamingService方式 🐛Fix Bugs [#45] 修复Client启动时一直重试注册到Server,导致阻塞主线程 [#48] 删除客户端ReceiveMessageService处理消息时使用线程池 [#53] 修复Redisson在高并发下出现的解锁异常 [#55] 修复获取MessageProcessors实例时可能出现线程安全性问题 [#57] 消息分发时,只有存在客户端列表才进行处理消息发送逻辑 [#61] Server运行过程中CPU飙升 [#65] Client注册时偶尔会出现获取IP地址为 "127.0.0.1"的情况 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"的后台运行容器,端口号映射宿主机6379 docker 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 # 运行项目 mvn spring-boot:run V. License message-pipe采用Apache2开源许可进行编写。

资源下载

更多资源
Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册