🚀 ABP VNext + gRPC 双向流:实时数据推送与订阅场景实现
📚 目录
📄 背景与动机
gRPC 提供三种流式调用模式(Server Streaming、Client Streaming、Bidirectional Streaming),在现代实时系统中至关重要。特别是在 ABP VNext 架构下,双向流(Bidirectional Streaming)可实现客户端与服务端的双向、持续通信,适用于日志推送、聊天系统、行情订阅等场景,兼具低延迟和高吞吐。
🧰 环境与依赖
-
.NET SDK:6.0+
-
ABP VNext:6.x+
-
NuGet 包:
Grpc.AspNetCore
-
appsettings.json 示例(开发环境 HTTP/2 明文):
{ "Kestrel": { "Endpoints": { "Grpc": { "Url": "http://localhost:5001/", "Protocols": "Http2" } } } }生产环境:强烈建议启用 HTTPS/TLS,并在 Kestrel 中配置证书,避免明文传输。
🔁 流式模型对比
| 调用类型 | 请求数 | 响应数 | 典型场景 |
|---|---|---|---|
| Unary | 1 | 1 | 简单 RPC |
| Server Streaming | 1 | N | 日志推送、文件下载 |
| Client Streaming | N | 1 | 批量上传 |
| Bidirectional Streaming | N | N | 实时聊天、行情订阅 |

1171

被折叠的 条评论
为什么被折叠?



