DH.NRemoting.Extensions 4.16.2025.1113

There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package DH.NRemoting.Extensions --version 4.16.2025.1113
                    
NuGet\Install-Package DH.NRemoting.Extensions -Version 4.16.2025.1113
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DH.NRemoting.Extensions" Version="4.16.2025.1113" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DH.NRemoting.Extensions" Version="4.16.2025.1113" />
                    
Directory.Packages.props
<PackageReference Include="DH.NRemoting.Extensions" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DH.NRemoting.Extensions --version 4.16.2025.1113
                    
#r "nuget: DH.NRemoting.Extensions, 4.16.2025.1113"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DH.NRemoting.Extensions@4.16.2025.1113
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DH.NRemoting.Extensions&version=4.16.2025.1113
                    
Install as a Cake Addin
#tool nuget:?package=DH.NRemoting.Extensions&version=4.16.2025.1113
                    
Install as a Cake Tool

DH.NRemoting - 协议通信库

协议通信库,包含RPC架构和HTTP架构,提供客户端服务端通信的基础框架,内置SRMP协议实现,并支持实现各种自定义协议。

参考目录:

RPC架构

客户端:ApiClient

服务端:ApiServer

应用客户端:ClientBase

特点:

  1. 服务端根据Action把请求转发给各个Controller,用法跟WebApi一致。
  2. 简单高性能,通信报文使用二进制序列化,中间没有任何损耗
  3. 接口出入参支持灵活的Json序列化(常规接口),同时也支持高效的二进制序列化(图片视频)
  4. TCP/UDP长会话,支持服务端主动下发消息
  5. 典型连接数,单机1万TCP长连接,最高400万
  6. 典型吞吐数,单机10万TPS,最高2266万TPS
  7. 服务端可寄宿于控制台、Web项目、桌面应用、IoT嵌入式应用
  8. 支持集群部署横向扩展,每个客户端跟其中一个服务端维持长连接,所有请求落到该服务器

代表性应用(蚂蚁调度AntJob):

  1. 客户端AntClient继承自ClientBase,通过Tcp/Udp等协议连接服务端ApiServer,进行登录、心跳等操作。
  2. 客户端使用应用AppId和AppSecret登录,获得令牌,后续无需携带或验证令牌,直到令牌过期重新登录。

HTTP架构

客户端:ApiHttpClient

服务端:ASP.NET WebApi

应用客户端:ClientBase

应用服务端:BaseDeviceController

特点:

  1. 标准ASP.NET WebApi作为服务端,重用现有技术栈,包括接口测试和集群部署管理。
  2. 客户端ApiHttpClient是标准HttpClient的进一步封装,支持多服务端地址负载均衡。
  3. 默认通信使用Json序列化,不适合传输文件、图片和视频等二进制数据。
  4. 服务端提供BaseController基类,封装了令牌验证等鉴权机制
  5. 服务端提供BaseDeviceController基类,封装常见的登录、心跳和更新等接口
  6. 通过WebSocket长连接实现指令下发,心跳保活
  7. 典型连接数,单机1000并发连接
  8. 典型吞吐数,单机1万TPS
  9. 服务端仅寄宿于 Kestrel和IIS
  10. 支持集群部署横向扩展,客户端每次请求都可能分流到不同应用服务器

代表性应用(轻量级IoT平台ZeroIoT):

  1. 客户端HttpDevice继承自ClientBase,通过Http/Https协议连接服务端WebApi,进行登录、注销、心跳和更新等操作。
  2. 客户端使用设备DeviceCode和DeviceSecret登录,获得令牌,后续每次请求头都需要带上令牌。
  3. 在心跳时检测并维持WebSocket长连接。

各项目默认支持net9.0/netstandard2.1/netstandard2.0/net4.5

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.17.2026.112-beta1212 164 1/12/2026
4.17.2026.112-beta1211 73 1/12/2026
4.17.2026.112-beta1210 73 1/12/2026
4.17.2026.112-beta1155 80 1/12/2026
4.17.2026.112-beta1151 77 1/12/2026
4.17.2026.112-beta1148 79 1/12/2026
4.17.2026.106-beta1110 87 1/6/2026
4.16.2025.1230-beta0221 80 12/30/2025
4.16.2025.1230-beta0210 86 12/30/2025
4.16.2025.1226-beta1050 153 12/26/2025
4.16.2025.1226-beta1048 130 12/26/2025
4.16.2025.1226-beta0350 160 12/26/2025
4.16.2025.1226-beta0347 164 12/26/2025
4.16.2025.1226-beta0345 160 12/26/2025
4.16.2025.1226-beta0344 159 12/26/2025
4.16.2025.1226-beta0342 157 12/26/2025
4.16.2025.1226-beta0339 154 12/26/2025
4.16.2025.1226-beta0338 150 12/26/2025
4.16.2025.1226-beta0337 152 12/26/2025
4.16.2025.1226-beta0336 151 12/26/2025
4.16.2025.1226-beta0334 151 12/26/2025
4.16.2025.1226-beta0332 153 12/26/2025
4.16.2025.1226-beta0326 150 12/26/2025
4.16.2025.1226-beta0324 151 12/26/2025
4.16.2025.1226-beta0318 151 12/26/2025
4.16.2025.1226-beta0315 154 12/26/2025
4.16.2025.1226-beta0222 159 12/26/2025
4.16.2025.1225-beta1259 165 12/25/2025
4.16.2025.1113 359 11/13/2025
4.16.2025.1113-beta0626 272 11/13/2025
4.15.2025.1106-beta0416 201 11/6/2025
4.15.2025.1106-beta0354 191 11/6/2025
4.15.2025.1106-beta0345 188 11/6/2025
4.15.2025.1106-beta0343 198 11/6/2025
4.15.2025.1106-beta0341 193 11/6/2025
4.15.2025.1106-beta0339 193 11/6/2025
4.15.2025.1106-beta0335 191 11/6/2025
4.15.2025.1024-beta1315 139 10/24/2025
4.15.2025.1002-beta0316 183 10/2/2025
4.14.2025.926-beta1249 150 9/26/2025
4.14.2025.926-beta1245 145 9/26/2025
4.14.2025.926-beta1243 131 9/26/2025
4.14.2025.926-beta1241 138 9/26/2025
4.14.2025.926-beta1240 146 9/26/2025
4.14.2025.926-beta1237 139 9/26/2025
4.14.2025.926-beta1215 133 9/26/2025
4.14.2025.926-beta1211 136 9/26/2025
4.14.2025.926-beta1210 128 9/26/2025
4.14.2025.926-beta1209 140 9/26/2025
4.14.2025.926-beta1207 131 9/26/2025
4.14.2025.926-beta1201 143 9/26/2025
4.14.2025.926-beta1158 152 9/26/2025
4.14.2025.926-beta1157 145 9/26/2025
4.14.2025.903-beta1140 222 9/3/2025
4.14.2025.903-beta1139 190 9/3/2025
4.14.2025.903-beta1138 185 9/3/2025
4.14.2025.903-beta1137 182 9/3/2025
4.14.2025.903-beta1136 180 9/3/2025
4.14.2025.903-beta1134 186 9/3/2025
4.14.2025.903-beta1129 186 9/3/2025
4.14.2025.903-beta1127 199 9/3/2025
4.14.2025.903-beta1125 189 9/3/2025
4.14.2025.903-beta1124 183 9/3/2025
4.14.2025.903-beta1120 192 9/3/2025
4.14.2025.903-beta1118 187 9/3/2025
4.14.2025.903-beta1115 192 9/3/2025
4.14.2025.903-beta1113 191 9/3/2025
4.14.2025.903-beta1112 178 9/3/2025
4.14.2025.903-beta1111 184 9/3/2025
4.14.2025.903-beta1109 189 9/3/2025
4.14.2025.903-beta1108 188 9/3/2025
4.14.2025.903-beta1106 185 9/3/2025
4.14.2025.903-beta1056 189 9/3/2025
4.14.2025.903-beta1053 194 9/3/2025
4.14.2025.903-beta1048 186 9/3/2025
4.14.2025.903-beta1045 184 9/3/2025
4.14.2025.902-beta1250 178 9/2/2025
4.14.2025.902-beta1247 181 9/2/2025
4.14.2025.826-beta0653 246 8/26/2025
4.14.2025.826-beta0318 238 8/26/2025
4.14.2025.826-beta0317 218 8/26/2025
4.14.2025.818-beta0636 177 8/18/2025
4.14.2025.818-beta0634 216 8/18/2025
4.14.2025.818-beta0630 170 8/18/2025
4.14.2025.818-beta0625 172 8/18/2025
4.14.2025.818-beta0623 174 8/18/2025
4.14.2025.818-beta0620 182 8/18/2025
4.14.2025.818-beta0619 180 8/18/2025
4.14.2025.818-beta0618 174 8/18/2025
4.14.2025.818-beta0615 188 8/18/2025
4.14.2025.818-beta0408 178 8/18/2025
4.14.2025.818-beta0358 188 8/18/2025
4.14.2025.802 100 8/2/2025
4.14.2025.802-beta0135 92 8/2/2025
4.14.2025.802-beta0132 87 8/2/2025
4.13.2025.725-beta0543 484 7/25/2025
4.13.2025.719-beta0114 97 7/19/2025
4.13.2025.719-beta0113 94 7/19/2025
4.13.2025.719-beta0111 89 7/19/2025
4.13.2025.717-beta0817 182 7/17/2025
4.13.2025.717-beta0814 187 7/17/2025
4.13.2025.717-beta0812 192 7/17/2025
4.13.2025.717-beta0756 165 7/17/2025
4.13.2025.711-beta0229 174 7/11/2025
4.13.2025.701-beta0940 207 7/1/2025
4.12.2025.617-beta0915 254 6/17/2025
4.12.2025.617-beta0842 192 6/17/2025
4.12.2025.610-beta0735 321 6/10/2025
4.12.2025.610-beta0732 314 6/10/2025
4.12.2025.610-beta0731 318 6/10/2025
4.12.2025.530-beta0148 224 5/30/2025
4.12.2025.530-beta0147 178 5/30/2025
4.12.2025.530-beta0145 187 5/30/2025
4.12.2025.520-beta0258 201 5/20/2025
4.12.2025.520-beta0252 180 5/20/2025
4.12.2025.520-beta0249 194 5/20/2025
4.12.2025.514-beta0805 312 5/14/2025
4.12.2025.506 225 5/6/2025
4.12.2025.506-beta0829 192 5/6/2025
4.12.2025.506-beta0820 177 5/6/2025
4.12.2025.506-beta0813 191 5/6/2025
4.11.2025.428-beta0300 193 4/28/2025
4.11.2025.428-beta0213 196 4/28/2025
4.11.2025.428-beta0212 185 4/28/2025
4.11.2025.428-beta0210 202 4/28/2025
4.11.2025.428-beta0207 192 4/28/2025
4.11.2025.428-beta0206 187 4/28/2025
4.11.2025.423-beta1045 220 4/23/2025
4.11.2025.423-beta1035 206 4/23/2025
4.11.2025.423-beta0844 193 4/23/2025
4.11.2025.412 154 4/12/2025
4.11.2025.412-beta0954 144 4/12/2025
4.11.2025.314-beta1114 175 3/14/2025
4.11.2025.314-beta1111 163 3/14/2025
4.11.2025.303 171 3/3/2025
4.11.2025.303-beta0303 148 3/3/2025
4.0.2025.227-beta0724 191 2/27/2025
4.0.2025.227-beta0647 136 2/27/2025
4.0.2025.227-beta0637 139 2/27/2025
4.0.2025.227-beta0628 142 2/27/2025
4.0.2025.227-beta0426 149 2/27/2025
4.0.2025.222-beta0156 151 2/22/2025
4.0.2025.220-beta0408 153 2/20/2025
4.0.2025.220-beta0405 155 2/20/2025
4.0.2025.218-beta0927 136 2/18/2025
4.0.2025.211-beta0830 169 2/11/2025
4.0.2025.211-beta0823 142 2/11/2025
4.0.2025.211-beta0814 146 2/11/2025
4.0.2025.207-beta0706 150 2/7/2025
4.0.2025.207-beta0705 140 2/7/2025
4.0.2025.205-beta0548 159 2/5/2025
4.0.2025.115-beta0804 132 1/15/2025
4.0.2025.114-beta0159 113 1/14/2025
4.0.2025.110-beta0002 122 1/10/2025
4.0.2025.103 191 1/3/2025
4.0.2025.103-beta0318 146 1/3/2025
4.0.2025.103-beta0316 147 1/3/2025
4.0.2024.1231-beta0923 138 12/31/2024
4.0.2024.1218-beta1143 199 12/18/2024
4.0.2024.1213-beta0957 196 12/13/2024
4.0.2024.1209-beta0236 144 12/9/2024
4.0.2024.1206-beta0108 153 12/6/2024
4.0.2024.1204-beta0300 159 12/4/2024
4.0.2024.1201-beta0321 132 12/1/2024
4.0.2024.1126-beta0219 144 11/26/2024
4.0.2024.1123-beta0928 155 11/23/2024
4.0.2024.1119-beta0628 164 11/19/2024
4.0.2024.1119-beta0624 140 11/19/2024
4.0.2024.1119-beta0621 147 11/19/2024
4.0.2024.1113-beta0622 165 11/13/2024
3.91.2024.1112-beta0826 144 11/12/2024
3.91.2024.1109-beta0233 162 11/9/2024
3.91.2024.1104-beta0322 138 11/4/2024
3.91.2024.1104-beta0304 131 11/4/2024
3.91.2024.1104-beta0258 131 11/4/2024
3.91.2024.1101-beta0219 136 11/1/2024
3.91.2024.1101-beta0216 118 11/1/2024
3.91.2024.1031 162 10/31/2024
3.91.2024.1031-beta1030 129 10/31/2024
3.91.2024.1024-beta0802 139 10/24/2024
3.91.2024.1016-beta0106 126 10/16/2024
3.91.2024.1014-beta0111 149 10/14/2024
3.91.2024.1013-beta0821 151 10/13/2024
3.91.2024.1012-beta0242 133 10/12/2024
3.91.2024.1012-beta0240 133 10/12/2024
3.91.2024.1011-beta0145 157 10/11/2024
3.91.2024.1008-beta0825 175 10/8/2024
3.91.2024.1008-beta0243 176 10/8/2024
3.91.2024.925-beta0639 148 9/25/2024
3.91.2024.923-beta0253 155 9/23/2024
3.9.2024.9210003 175 9/21/2024
3.9.2024.9210002 164 9/21/2024
3.7.2024.923-beta0208 134 9/23/2024
3.7.2024.920-beta0123 155 9/20/2024
3.7.2024.918-beta0823 173 9/18/2024
3.7.2024.918-beta0813 148 9/18/2024
3.7.2024.918-beta0811 157 9/18/2024
3.7.2024.918-beta0806 142 9/18/2024
3.7.2024.913-beta0617 163 9/13/2024
3.7.2024.911-beta1205 178 9/11/2024
3.7.2024.907-beta0129 175 9/7/2024
3.7.2024.903-beta0222 158 9/3/2024
3.7.2024.828-beta0223 179 8/28/2024
3.7.2024.826-beta0156 179 8/26/2024
3.7.2024.820 209 8/20/2024
3.7.2024.820-beta0352 196 8/20/2024
3.7.2024.819-beta1413 187 8/19/2024
3.6.2024.8160165 188 8/16/2024
3.6.2024.8150164 188 8/15/2024
3.6.2024.8140163 195 8/14/2024
3.6.2024.8140162 189 8/14/2024
3.6.2024.8140161 184 8/14/2024
3.6.2024.8130160 178 8/13/2024
3.6.2024.8130159 184 8/13/2024
3.6.2024.8130158 175 8/13/2024
3.6.2024.8130156 192 8/13/2024
3.6.2024.8130155 188 8/13/2024
3.6.2024.8120153 177 8/12/2024
3.6.2024.8120151 181 8/12/2024
3.6.2024.8110150 183 8/11/2024
3.6.2024.8100148 178 8/10/2024
3.6.2024.8100147 168 8/9/2024
3.6.2024.8090146 177 8/9/2024
3.6.2024.8090145 181 8/9/2024
3.6.2024.8080141 169 8/8/2024
3.6.2024.8070140 165 8/7/2024
3.6.2024.8070139 167 8/7/2024
3.6.2024.8070138 171 8/7/2024
3.6.2024.8050137 146 8/5/2024
3.6.2024.8050135 145 8/5/2024
3.6.2024.8040134 158 12/13/2024
3.6.2024.8040133 150 8/4/2024
3.6.2024.8030132 140 8/3/2024
3.6.2024.8020131 140 8/2/2024
3.6.2024.8010128 161 8/1/2024
3.6.2024.7310126 136 7/31/2024
3.6.2024.7300125 121 7/30/2024
3.6.2024.7290124 143 7/29/2024
3.6.2024.7270123 157 7/27/2024
3.6.2024.7260122 163 7/26/2024
3.6.2024.7240120 173 7/24/2024
3.6.2024.7230119 172 7/23/2024
3.6.2024.7220118 194 7/22/2024
3.6.2024.7220114 173 7/22/2024
3.6.2024.7220113 164 7/22/2024
3.6.2024.7190112 165 7/19/2024
3.6.2024.7190111 179 7/19/2024
3.6.2024.7180110 166 7/18/2024
3.6.2024.7170109 176 7/17/2024
3.6.2024.7160108 171 7/16/2024
3.6.2024.7160107 175 7/16/2024
3.6.2024.7150106 176 7/15/2024
3.6.2024.7150105 173 7/15/2024
3.6.2024.7130104 176 7/13/2024
3.6.2024.7130103 164 7/13/2024
3.6.2024.7120102 172 7/12/2024
3.6.2024.7110101 170 7/11/2024
3.6.2024.7100100 164 7/10/2024
3.6.2024.7090099 171 7/9/2024
3.6.2024.7090098 161 7/9/2024
3.6.2024.7090097 142 7/9/2024
3.6.2024.7090096 163 7/8/2024
3.6.2024.7080095 176 7/8/2024
3.6.2024.7080094 161 7/8/2024
3.6.2024.7080091 164 7/8/2024
3.6.2024.7050090 153 7/5/2024
3.6.2024.7040089 187 7/4/2024
3.6.2024.7030088 174 7/3/2024
3.6.2024.7020087 166 7/2/2024
3.6.2024.7020086 171 7/2/2024
3.6.2024.7010085 173 7/1/2024
3.6.2024.7010084 168 7/1/2024
3.6.2024.6290083 181 6/29/2024
3.6.2024.6280082 174 6/28/2024
3.6.2024.6270081 175 6/27/2024
3.6.2024.6260080 164 6/26/2024
3.6.2024.6250079 160 6/25/2024
3.6.2024.6250078 162 6/25/2024
3.6.2024.6250077 174 6/24/2024
3.6.2024.6240076 150 6/24/2024
3.6.2024.6240075 175 6/24/2024
3.6.2024.6200074 169 6/20/2024
3.6.2024.6190073 180 6/19/2024
3.6.2024.6180072 173 6/18/2024
3.6.2024.6170071 180 6/17/2024
3.6.2024.6150070 181 6/15/2024
3.6.2024.6140069 169 6/14/2024
3.6.2024.6130068 180 6/13/2024
3.6.2024.6130067 176 6/13/2024
3.6.2024.6120062 166 6/12/2024
3.6.2024.6120061 161 6/12/2024
3.6.2024.6110060 169 6/11/2024
3.6.2024.6090059 172 6/9/2024
3.6.2024.6060058 170 6/6/2024
3.6.2024.6050057 174 6/5/2024
3.6.2024.6040056 190 6/4/2024
3.6.2024.6030055 166 6/3/2024
3.6.2024.5310054 171 5/31/2024
3.6.2024.5300053 180 5/30/2024
3.6.2024.5290052 181 5/29/2024
3.6.2024.5290051 181 5/29/2024
3.6.2024.5280050 170 5/28/2024
3.6.2024.5270049 165 5/27/2024
3.6.2024.5250048 180 5/25/2024
3.6.2024.5250047 190 5/25/2024
3.6.2024.5240046 192 5/24/2024
3.6.2024.5240045 190 5/24/2024
3.6.2024.5240044 190 5/24/2024
3.6.2024.5240043 184 5/24/2024
3.6.2024.5230039 176 5/23/2024
3.6.2024.5230038 187 5/23/2024
3.6.2024.5230037 188 5/23/2024
3.6.2024.5220036 173 5/23/2024
3.6.2024.5220035 180 5/22/2024
3.6.2024.5220034 184 5/22/2024
3.6.2024.5210033 182 5/21/2024
3.6.2024.5210032 186 5/21/2024
3.6.2024.5200031 171 5/20/2024
3.6.2024.5170030 187 5/17/2024
3.6.2024.5160029 151 5/16/2024
3.6.2024.5160028 196 5/16/2024
3.6.2024.5150027 177 5/15/2024
3.6.2024.5140026 151 5/14/2024
3.6.2024.5130025 137 5/13/2024
3.6.2024.5130024 161 5/13/2024
3.6.2024.5110024 154 5/11/2024
3.6.2024.5110023 141 5/11/2024
3.6.2024.5110022 154 5/11/2024
3.6.2024.5100021 154 5/10/2024
3.6.2024.5100020 166 5/10/2024
3.6.2024.5090019 160 5/9/2024
3.6.2024.5080018 163 5/8/2024
3.6.2024.5080017 166 5/8/2024
3.6.2024.5070016 156 5/7/2024
3.0.2024.819-beta1233 161 8/19/2024

第三代协议通信库,增强RPC,引入主流Http/WebSockt/WebApi应用级封装