CodeWF.EventBus.Socket
dotnet9
概览 文档 更新日志 GitHub · 源码与 Issue ↗

CodeWF.EventBus.Socket

跨进程 TCP 事件总线(IPC)

面向 C# 进程间通信的轻量 TCP 事件总线:跨进程 Publish/Subscribe、同主题 Query/Response、按 TaskId 关联并发查询;零外部 MQ 依赖,替代 RabbitMQ/Kafka/Redis 的本地 IPC 方案。

net8.0net10.0net11.0 IPCTCP事件总线 开源免费
> dotnet add package CodeWF.EventBus.Socket
GitHub ↗
GitHub Star ★ 58
NuGet 下载 3.8k+
子包数量 1

为什么选它

Features
📨
跨进程发布订阅

同机进程间 Publish/Subscribe,语义与进程内总线一致。

🔁
请求响应

同主题 Query/Response,按 TaskId 关联支持并发查询。

🧱
复用 NetWrapper

TcpServer/Client、命令处理器与心跳,久经考验。

🪶
零 MQ 依赖

不装 RabbitMQ/Kafka/Redis,单机 IPC 轻装上阵。

🚀
net8/10/11

多目标框架,服务端与桌面端同库。

📐
设计文档齐全

架构图、命令与查询时序图随仓库维护。

> dotnet add package CodeWF.EventBus.Socket

核心包按需引入;目标框架 net8.0 / net10.0 / net11.0。全部包在 nuget.org 与 GitHub 同步发布。

服务端启动监听
csharp
using CodeWF.EventBus.Socket;

IEventServer eventServer = new EventServer();
await eventServer.StartAsync("127.0.0.1", 9100);
客户端连接
csharp
using CodeWF.EventBus.Socket;

IEventClient eventClient = new EventClient();
await eventClient.ConnectAsync("127.0.0.1", 9100);

架构一览

Architecture 设计文档 →
CodeWF.EventBus.Socket 架构图

文档

Documentation 全部文档 →

最近更新

Changelog 查看完整日志 →
1.5.0 🚀[新增]-服务端离线消息补发:客户端断线期间,其订阅主题的广播进入服务端有界缓冲(按客户端 ClientId + 主题隔离),重连并重新订阅成功后按原顺序补发,不再丢失断线窗口内的消息(issue #1)。
1.4.4.2 Hardened client and server lifecycle handling, cancellation, reconnect recovery, authentication, validation, queue limit
1.3.4 🚀[新增]-NuGet 包统一支持 `net8.0;net10.0;net11.0`,并发布新版本。