🚀 SignalR 实战
30章
📡 实时通信 · 从入门到架构
01
SignalR初探
实时通信
什么是实时通信 · 发展史 · 核心优势 · 对比
→
02
环境搭建
.NET SDK
安装SDK · 创建项目 · NuGet包 · 结构解析
→
03
Hub基础
核心
创建Hub · 服务端方法 · 客户端调用 · 生命周期
→
04
强类型Hub
接口
为什么用强类型 · 定义接口 · 实现 · 客户端调用
→
05
分组管理
组
什么是分组 · 加入/离开 · 组内消息 · 最佳实践
→
06
用户标识
身份
内置标识 · 自定义 · 连接映射 · 多设备登录
→
07
连接管理
监控
连接ID · 状态监控 · 断线重连 · 心跳
→
08
消息协议
JSON/MessagePack
JSON · MessagePack · 协议选择 · 自定义序列化
→
09
Hub生命周期
DI
创建销毁 · 依赖注入 · 作用域 · 资源释放
→
10
流式传输
Stream
流式传输 · C/S双向流 · 使用场景
→
11
客户端开发(.NET)
.NET
控制台 · WPF · Blazor · 连接管理
→
12
客户端开发(JavaScript)
JS
@microsoft/signalr · 连接 · 方法 · 事件
→
13
客户端开发(TypeScript)
TS
类型定义 · 强类型 · 异步 · 错误处理
→
14
客户端开发(Java/Android)
Android
Java客户端 · Android集成 · 配置 · 重连
→
15
客户端开发(iOS/Swift)
Swift
Swift客户端 · iOS集成 · 后台 · 推送
→
16
认证与授权
JWT
JWT · Cookie · 自定义认证 · 授权
→
17
跨域配置
CORS
CORS原理 · SignalR配置 · WebSocket跨域 · 安全
→
18
扩展性设计
Redis背板
横向扩展 · Redis背板 · Azure SignalR · 自定义
→
19
性能优化
优化
连接数 · 消息压缩 · 批量发送 · 异步最佳实践
→
20
日志与监控
监控
内置日志 · 自定义提供程序 · 性能计数器 · App Insights
→
21
错误处理
异常
Hub异常 · 连接异常 · 重试 · 全局处理
→
22
安全最佳实践
安全
输入验证 · 速率限制 · 连接验证 · 防伪造
→
23
WebSocket深入
WS
协议 · 回退机制 · 传输协商 · 自定义传输
→
24
Server-Sent Events
SSE
SSE原理 · SignalR实现 · SSE vs WS · 场景
→
25
Long Polling
长轮询
长轮询机制 · SignalR实现 · 性能 · 何时使用
→
26
实时聊天系统
聊天
需求分析 · Hub设计 · 消息存储 · 在线状态 · 历史
→
27
实时通知系统
通知
通知模型 · 广播/定向 · 持久化 · 已读未读
→
28
实时协作编辑
OT
OT算法 · 操作转换 · 冲突解决 · 状态同步
→
29
实时数据仪表盘
仪表盘
数据推送 · 图表更新 · 性能监控 · 大屏
→
30
综合实战
微服务
微服务集成 · 容器化 · CI/CD · 压测调优
→
点击卡片跳转对应章节 · 友好色系