DH.NRemoting.Extensions 4.14.2025.802

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.14.2025.802
                    
NuGet\Install-Package DH.NRemoting.Extensions -Version 4.14.2025.802
                    
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.14.2025.802" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DH.NRemoting.Extensions" Version="4.14.2025.802" />
                    
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.14.2025.802
                    
#r "nuget: DH.NRemoting.Extensions, 4.14.2025.802"
                    
#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.14.2025.802
                    
#: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.14.2025.802
                    
Install as a Cake Addin
#tool nuget:?package=DH.NRemoting.Extensions&version=4.14.2025.802
                    
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 was computed.  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.14.2025.903-beta1140 167 9/3/2025
4.14.2025.903-beta1139 132 9/3/2025
4.14.2025.903-beta1138 132 9/3/2025
4.14.2025.903-beta1137 128 9/3/2025
4.14.2025.903-beta1136 128 9/3/2025
4.14.2025.903-beta1134 130 9/3/2025
4.14.2025.903-beta1129 130 9/3/2025
4.14.2025.903-beta1127 139 9/3/2025
4.14.2025.903-beta1125 133 9/3/2025
4.14.2025.903-beta1124 131 9/3/2025
4.14.2025.903-beta1120 139 9/3/2025
4.14.2025.903-beta1118 136 9/3/2025
4.14.2025.903-beta1115 134 9/3/2025
4.14.2025.903-beta1113 133 9/3/2025
4.14.2025.903-beta1112 132 9/3/2025
4.14.2025.903-beta1111 130 9/3/2025
4.14.2025.903-beta1109 132 9/3/2025
4.14.2025.903-beta1108 130 9/3/2025
4.14.2025.903-beta1106 130 9/3/2025
4.14.2025.903-beta1056 132 9/3/2025
4.14.2025.903-beta1053 133 9/3/2025
4.14.2025.903-beta1048 132 9/3/2025
4.14.2025.903-beta1045 132 9/3/2025
4.14.2025.902-beta1250 123 9/2/2025
4.14.2025.902-beta1247 125 9/2/2025
4.14.2025.826-beta0653 191 8/26/2025
4.14.2025.826-beta0318 183 8/26/2025
4.14.2025.826-beta0317 168 8/26/2025
4.14.2025.818-beta0636 122 8/18/2025
4.14.2025.818-beta0634 163 8/18/2025
4.14.2025.818-beta0630 117 8/18/2025
4.14.2025.818-beta0625 129 8/18/2025
4.14.2025.818-beta0623 122 8/18/2025
4.14.2025.818-beta0620 122 8/18/2025
4.14.2025.818-beta0619 123 8/18/2025
4.14.2025.818-beta0618 123 8/18/2025
4.14.2025.818-beta0615 122 8/18/2025
4.14.2025.818-beta0408 119 8/18/2025
4.14.2025.818-beta0358 122 8/18/2025
4.14.2025.802 53 8/2/2025
4.14.2025.802-beta0135 43 8/2/2025
4.14.2025.802-beta0132 40 8/2/2025
4.13.2025.725-beta0543 415 7/25/2025
4.13.2025.719-beta0114 67 7/19/2025
4.13.2025.719-beta0113 62 7/19/2025
4.13.2025.719-beta0111 57 7/19/2025
4.13.2025.717-beta0817 141 7/17/2025
4.13.2025.717-beta0814 134 7/17/2025
4.13.2025.717-beta0812 134 7/17/2025
4.13.2025.717-beta0756 130 7/17/2025
4.13.2025.711-beta0229 135 7/11/2025
4.13.2025.701-beta0940 159 7/1/2025
4.12.2025.617-beta0915 207 6/17/2025
4.12.2025.617-beta0842 143 6/17/2025
4.12.2025.610-beta0735 280 6/10/2025
4.12.2025.610-beta0732 271 6/10/2025
4.12.2025.610-beta0731 272 6/10/2025
4.12.2025.530-beta0148 180 5/30/2025
4.12.2025.530-beta0147 131 5/30/2025
4.12.2025.530-beta0145 142 5/30/2025
4.12.2025.520-beta0258 162 5/20/2025
4.12.2025.520-beta0252 139 5/20/2025
4.12.2025.520-beta0249 145 5/20/2025
4.12.2025.514-beta0805 268 5/14/2025
4.12.2025.506 180 5/6/2025
4.12.2025.506-beta0829 144 5/6/2025
4.12.2025.506-beta0820 136 5/6/2025
4.12.2025.506-beta0813 142 5/6/2025
4.11.2025.428-beta0300 146 4/28/2025
4.11.2025.428-beta0213 152 4/28/2025
4.11.2025.428-beta0212 140 4/28/2025
4.11.2025.428-beta0210 142 4/28/2025
4.11.2025.428-beta0207 145 4/28/2025
4.11.2025.428-beta0206 143 4/28/2025
4.11.2025.423-beta1045 177 4/23/2025
4.11.2025.423-beta1035 161 4/23/2025
4.11.2025.423-beta0844 154 4/23/2025
4.11.2025.412 113 4/12/2025
4.11.2025.412-beta0954 104 4/12/2025
4.11.2025.314-beta1114 137 3/14/2025
4.11.2025.314-beta1111 125 3/14/2025
4.11.2025.303 138 3/3/2025
4.11.2025.303-beta0303 106 3/3/2025
4.0.2025.227-beta0724 148 2/27/2025
4.0.2025.227-beta0647 92 2/27/2025
4.0.2025.227-beta0637 96 2/27/2025
4.0.2025.227-beta0628 98 2/27/2025
4.0.2025.227-beta0426 106 2/27/2025
4.0.2025.222-beta0156 105 2/22/2025
4.0.2025.220-beta0408 104 2/20/2025
4.0.2025.220-beta0405 105 2/20/2025
4.0.2025.218-beta0927 96 2/18/2025
4.0.2025.211-beta0830 130 2/11/2025
4.0.2025.211-beta0823 100 2/11/2025
4.0.2025.211-beta0814 102 2/11/2025
4.0.2025.207-beta0706 113 2/7/2025
4.0.2025.207-beta0705 105 2/7/2025
4.0.2025.205-beta0548 121 2/5/2025
4.0.2025.115-beta0804 89 1/15/2025
4.0.2025.114-beta0159 75 1/14/2025
4.0.2025.110-beta0002 84 1/10/2025
4.0.2025.103 148 1/3/2025
4.0.2025.103-beta0318 106 1/3/2025
4.0.2025.103-beta0316 107 1/3/2025
4.0.2024.1231-beta0923 90 12/31/2024
4.0.2024.1218-beta1143 154 12/18/2024
4.0.2024.1213-beta0957 159 12/13/2024
4.0.2024.1209-beta0236 105 12/9/2024
4.0.2024.1206-beta0108 110 12/6/2024
4.0.2024.1204-beta0300 118 12/4/2024
4.0.2024.1201-beta0321 92 12/1/2024
4.0.2024.1126-beta0219 98 11/26/2024
4.0.2024.1123-beta0928 115 11/23/2024
4.0.2024.1119-beta0628 125 11/19/2024
4.0.2024.1119-beta0624 96 11/19/2024
4.0.2024.1119-beta0621 101 11/19/2024
4.0.2024.1113-beta0622 120 11/13/2024
3.91.2024.1112-beta0826 97 11/12/2024
3.91.2024.1109-beta0233 117 11/9/2024
3.91.2024.1104-beta0322 96 11/4/2024
3.91.2024.1104-beta0304 91 11/4/2024
3.91.2024.1104-beta0258 92 11/4/2024
3.91.2024.1101-beta0219 96 11/1/2024
3.91.2024.1101-beta0216 92 11/1/2024
3.91.2024.1031 126 10/31/2024
3.91.2024.1031-beta1030 100 10/31/2024
3.91.2024.1024-beta0802 109 10/24/2024
3.91.2024.1016-beta0106 105 10/16/2024
3.91.2024.1014-beta0111 109 10/14/2024
3.91.2024.1013-beta0821 107 10/13/2024
3.91.2024.1012-beta0242 95 10/12/2024
3.91.2024.1012-beta0240 90 10/12/2024
3.91.2024.1011-beta0145 113 10/11/2024
3.91.2024.1008-beta0825 132 10/8/2024
3.91.2024.1008-beta0243 135 10/8/2024
3.91.2024.925-beta0639 110 9/25/2024
3.91.2024.923-beta0253 110 9/23/2024
3.9.2024.9210003 130 9/21/2024
3.9.2024.9210002 125 9/21/2024
3.7.2024.923-beta0208 104 9/23/2024
3.7.2024.920-beta0123 117 9/20/2024
3.7.2024.918-beta0823 128 9/18/2024
3.7.2024.918-beta0813 102 9/18/2024
3.7.2024.918-beta0811 111 9/18/2024
3.7.2024.918-beta0806 103 9/18/2024
3.7.2024.913-beta0617 122 9/13/2024
3.7.2024.911-beta1205 135 9/11/2024
3.7.2024.907-beta0129 135 9/7/2024
3.7.2024.903-beta0222 131 9/3/2024
3.7.2024.828-beta0223 139 8/28/2024
3.7.2024.826-beta0156 142 8/26/2024
3.7.2024.820 173 8/20/2024
3.7.2024.820-beta0352 156 8/20/2024
3.7.2024.819-beta1413 143 8/19/2024
3.6.2024.8160165 151 8/16/2024
3.6.2024.8150164 154 8/15/2024
3.6.2024.8140163 151 8/14/2024
3.6.2024.8140162 148 8/14/2024
3.6.2024.8140161 145 8/14/2024
3.6.2024.8130160 142 8/13/2024
3.6.2024.8130159 142 8/13/2024
3.6.2024.8130158 139 8/13/2024
3.6.2024.8130156 154 8/13/2024
3.6.2024.8130155 145 8/13/2024
3.6.2024.8120153 139 8/12/2024
3.6.2024.8120151 142 8/12/2024
3.6.2024.8110150 142 8/11/2024
3.6.2024.8100148 145 8/10/2024
3.6.2024.8100147 140 8/9/2024
3.6.2024.8090146 139 8/9/2024
3.6.2024.8090145 147 8/9/2024
3.6.2024.8080141 126 8/8/2024
3.6.2024.8070140 130 8/7/2024
3.6.2024.8070139 132 8/7/2024
3.6.2024.8070138 131 8/7/2024
3.6.2024.8050137 102 8/5/2024
3.6.2024.8050135 107 8/5/2024
3.6.2024.8040134 116 12/13/2024
3.6.2024.8040133 104 8/4/2024
3.6.2024.8030132 98 8/3/2024
3.6.2024.8020131 103 8/2/2024
3.6.2024.8010128 122 8/1/2024
3.6.2024.7310126 91 7/31/2024
3.6.2024.7300125 93 7/30/2024
3.6.2024.7290124 111 7/29/2024
3.6.2024.7270123 116 7/27/2024
3.6.2024.7260122 120 7/26/2024
3.6.2024.7240120 131 7/24/2024
3.6.2024.7230119 134 7/23/2024
3.6.2024.7220118 150 7/22/2024
3.6.2024.7220114 135 7/22/2024
3.6.2024.7220113 129 7/22/2024
3.6.2024.7190112 126 7/19/2024
3.6.2024.7190111 138 7/19/2024
3.6.2024.7180110 128 7/18/2024
3.6.2024.7170109 140 7/17/2024
3.6.2024.7160108 133 7/16/2024
3.6.2024.7160107 135 7/16/2024
3.6.2024.7150106 137 7/15/2024
3.6.2024.7150105 132 7/15/2024
3.6.2024.7130104 134 7/13/2024
3.6.2024.7130103 130 7/13/2024
3.6.2024.7120102 128 7/12/2024
3.6.2024.7110101 129 7/11/2024
3.6.2024.7100100 128 7/10/2024
3.6.2024.7090099 130 7/9/2024
3.6.2024.7090098 127 7/9/2024
3.6.2024.7090097 109 7/9/2024
3.6.2024.7090096 126 7/8/2024
3.6.2024.7080095 133 7/8/2024
3.6.2024.7080094 118 7/8/2024
3.6.2024.7080091 121 7/8/2024
3.6.2024.7050090 117 7/5/2024
3.6.2024.7040089 146 7/4/2024
3.6.2024.7030088 137 7/3/2024
3.6.2024.7020087 122 7/2/2024
3.6.2024.7020086 135 7/2/2024
3.6.2024.7010085 134 7/1/2024
3.6.2024.7010084 132 7/1/2024
3.6.2024.6290083 140 6/29/2024
3.6.2024.6280082 135 6/28/2024
3.6.2024.6270081 133 6/27/2024
3.6.2024.6260080 127 6/26/2024
3.6.2024.6250079 119 6/25/2024
3.6.2024.6250078 127 6/25/2024
3.6.2024.6250077 133 6/24/2024
3.6.2024.6240076 110 6/24/2024
3.6.2024.6240075 130 6/24/2024
3.6.2024.6200074 130 6/20/2024
3.6.2024.6190073 135 6/19/2024
3.6.2024.6180072 146 6/18/2024
3.6.2024.6170071 141 6/17/2024
3.6.2024.6150070 140 6/15/2024
3.6.2024.6140069 134 6/14/2024
3.6.2024.6130068 141 6/13/2024
3.6.2024.6130067 133 6/13/2024
3.6.2024.6120062 127 6/12/2024
3.6.2024.6120061 123 6/12/2024
3.6.2024.6110060 126 6/11/2024
3.6.2024.6090059 131 6/9/2024
3.6.2024.6060058 131 6/6/2024
3.6.2024.6050057 130 6/5/2024
3.6.2024.6040056 147 6/4/2024
3.6.2024.6030055 122 6/3/2024
3.6.2024.5310054 134 5/31/2024
3.6.2024.5300053 138 5/30/2024
3.6.2024.5290052 146 5/29/2024
3.6.2024.5290051 139 5/29/2024
3.6.2024.5280050 128 5/28/2024
3.6.2024.5270049 135 5/27/2024
3.6.2024.5250048 143 5/25/2024
3.6.2024.5250047 147 5/25/2024
3.6.2024.5240046 147 5/24/2024
3.6.2024.5240045 148 5/24/2024
3.6.2024.5240044 149 5/24/2024
3.6.2024.5240043 150 5/24/2024
3.6.2024.5230039 133 5/23/2024
3.6.2024.5230038 143 5/23/2024
3.6.2024.5230037 148 5/23/2024
3.6.2024.5220036 136 5/23/2024
3.6.2024.5220035 154 5/22/2024
3.6.2024.5220034 141 5/22/2024
3.6.2024.5210033 147 5/21/2024
3.6.2024.5210032 144 5/21/2024
3.6.2024.5200031 136 5/20/2024
3.6.2024.5170030 149 5/17/2024
3.6.2024.5160029 122 5/16/2024
3.6.2024.5160028 155 5/16/2024
3.6.2024.5150027 130 5/15/2024
3.6.2024.5140026 130 5/14/2024
3.6.2024.5130025 101 5/13/2024
3.6.2024.5130024 120 5/13/2024
3.6.2024.5110024 116 5/11/2024
3.6.2024.5110023 102 5/11/2024
3.6.2024.5110022 116 5/11/2024
3.6.2024.5100021 118 5/10/2024
3.6.2024.5100020 122 5/10/2024
3.6.2024.5090019 123 5/9/2024
3.6.2024.5080018 127 5/8/2024
3.6.2024.5080017 122 5/8/2024
3.6.2024.5070016 114 5/7/2024
3.0.2024.819-beta1233 118 8/19/2024

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