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

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