DH.NRemoting.Extensions 3.7.2024.903-beta0222

This is a prerelease version of DH.NRemoting.Extensions.
There is a newer version of this package available.
See the version list below for details.
dotnet add package DH.NRemoting.Extensions --version 3.7.2024.903-beta0222                
NuGet\Install-Package DH.NRemoting.Extensions -Version 3.7.2024.903-beta0222                
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="3.7.2024.903-beta0222" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DH.NRemoting.Extensions --version 3.7.2024.903-beta0222                
#r "nuget: DH.NRemoting.Extensions, 3.7.2024.903-beta0222"                
#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.
// Install DH.NRemoting.Extensions as a Cake Addin
#addin nuget:?package=DH.NRemoting.Extensions&version=3.7.2024.903-beta0222&prerelease

// Install DH.NRemoting.Extensions as a Cake Tool
#tool nuget:?package=DH.NRemoting.Extensions&version=3.7.2024.903-beta0222&prerelease                

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长连接。
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 was computed.  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. 
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.11.2025.303 90 3/3/2025
4.11.2025.303-beta0303 66 3/3/2025
4.0.2025.227-beta0724 116 2/27/2025
4.0.2025.227-beta0647 68 2/27/2025
4.0.2025.227-beta0637 68 2/27/2025
4.0.2025.227-beta0628 72 2/27/2025
4.0.2025.227-beta0426 75 2/27/2025
4.0.2025.222-beta0156 78 2/22/2025
4.0.2025.220-beta0408 76 2/20/2025
4.0.2025.220-beta0405 77 2/20/2025
4.0.2025.218-beta0927 69 2/18/2025
4.0.2025.211-beta0830 101 2/11/2025
4.0.2025.211-beta0823 74 2/11/2025
4.0.2025.211-beta0814 80 2/11/2025
4.0.2025.207-beta0706 91 2/7/2025
4.0.2025.207-beta0705 77 2/7/2025
4.0.2025.205-beta0548 95 2/5/2025
4.0.2025.115-beta0804 65 1/15/2025
4.0.2025.114-beta0159 56 1/14/2025
4.0.2025.110-beta0002 60 1/10/2025
4.0.2025.103 126 1/3/2025
4.0.2025.103-beta0318 83 1/3/2025
4.0.2025.103-beta0316 81 1/3/2025
4.0.2024.1231-beta0923 62 12/31/2024
4.0.2024.1218-beta1143 134 12/18/2024
4.0.2024.1213-beta0957 130 12/13/2024
4.0.2024.1209-beta0236 81 12/9/2024
4.0.2024.1206-beta0108 85 12/6/2024
4.0.2024.1204-beta0300 95 12/4/2024
4.0.2024.1201-beta0321 72 12/1/2024
4.0.2024.1126-beta0219 74 11/26/2024
4.0.2024.1123-beta0928 85 11/23/2024
4.0.2024.1119-beta0628 105 11/19/2024
4.0.2024.1119-beta0624 70 11/19/2024
4.0.2024.1119-beta0621 79 11/19/2024
4.0.2024.1113-beta0622 93 11/13/2024
3.91.2024.1112-beta0826 77 11/12/2024
3.91.2024.1109-beta0233 91 11/9/2024
3.91.2024.1104-beta0322 75 11/4/2024
3.91.2024.1104-beta0304 69 11/4/2024
3.91.2024.1104-beta0258 68 11/4/2024
3.91.2024.1101-beta0219 75 11/1/2024
3.91.2024.1101-beta0216 71 11/1/2024
3.91.2024.1031 104 10/31/2024
3.91.2024.1031-beta1030 76 10/31/2024
3.91.2024.1024-beta0802 87 10/24/2024
3.91.2024.1016-beta0106 84 10/16/2024
3.91.2024.1014-beta0111 83 10/14/2024
3.91.2024.1013-beta0821 87 10/13/2024
3.91.2024.1012-beta0242 78 10/12/2024
3.91.2024.1012-beta0240 67 10/12/2024
3.91.2024.1011-beta0145 92 10/11/2024
3.91.2024.1008-beta0825 107 10/8/2024
3.91.2024.1008-beta0243 108 10/8/2024
3.91.2024.925-beta0639 82 9/25/2024
3.91.2024.923-beta0253 88 9/23/2024
3.9.2024.9210003 104 9/21/2024
3.9.2024.9210002 101 9/21/2024
3.7.2024.923-beta0208 80 9/23/2024
3.7.2024.920-beta0123 95 9/20/2024
3.7.2024.918-beta0823 104 9/18/2024
3.7.2024.918-beta0813 78 9/18/2024
3.7.2024.918-beta0811 78 9/18/2024
3.7.2024.918-beta0806 82 9/18/2024
3.7.2024.913-beta0617 98 9/13/2024
3.7.2024.911-beta1205 113 9/11/2024
3.7.2024.907-beta0129 111 9/7/2024
3.7.2024.903-beta0222 110 9/3/2024
3.7.2024.828-beta0223 118 8/28/2024
3.7.2024.826-beta0156 118 8/26/2024
3.7.2024.820 151 8/20/2024
3.7.2024.820-beta0352 133 8/20/2024
3.7.2024.819-beta1413 122 8/19/2024
3.6.2024.8160165 127 8/16/2024
3.6.2024.8150164 128 8/15/2024
3.6.2024.8140163 126 8/14/2024
3.6.2024.8140162 124 8/14/2024
3.6.2024.8140161 121 8/14/2024
3.6.2024.8130160 117 8/13/2024
3.6.2024.8130159 118 8/13/2024
3.6.2024.8130158 118 8/13/2024
3.6.2024.8130156 117 8/13/2024
3.6.2024.8130155 122 8/13/2024
3.6.2024.8120153 119 8/12/2024
3.6.2024.8120151 118 8/12/2024
3.6.2024.8110150 118 8/11/2024
3.6.2024.8100148 118 8/10/2024
3.6.2024.8100147 123 8/9/2024
3.6.2024.8090146 119 8/9/2024
3.6.2024.8090145 118 8/9/2024
3.6.2024.8080141 104 8/8/2024
3.6.2024.8070140 105 8/7/2024
3.6.2024.8070139 106 8/7/2024
3.6.2024.8070138 109 8/7/2024
3.6.2024.8050137 81 8/5/2024
3.6.2024.8050135 84 8/5/2024
3.6.2024.8040134 88 12/13/2024
3.6.2024.8040133 84 8/4/2024
3.6.2024.8030132 77 8/3/2024
3.6.2024.8020131 80 8/2/2024
3.6.2024.8010128 97 8/1/2024
3.6.2024.7310126 71 7/31/2024
3.6.2024.7300125 73 7/30/2024
3.6.2024.7290124 87 7/29/2024
3.6.2024.7270123 97 7/27/2024
3.6.2024.7260122 101 7/26/2024
3.6.2024.7240120 104 7/24/2024
3.6.2024.7230119 108 7/23/2024
3.6.2024.7220118 128 7/22/2024
3.6.2024.7220114 115 7/22/2024
3.6.2024.7220113 109 7/22/2024
3.6.2024.7190112 102 7/19/2024
3.6.2024.7190111 113 7/19/2024
3.6.2024.7180110 104 7/18/2024
3.6.2024.7170109 116 7/17/2024
3.6.2024.7160108 111 7/16/2024
3.6.2024.7160107 111 7/16/2024
3.6.2024.7150106 116 7/15/2024
3.6.2024.7150105 111 7/15/2024
3.6.2024.7130104 111 7/13/2024
3.6.2024.7130103 108 7/13/2024
3.6.2024.7120102 105 7/12/2024
3.6.2024.7110101 110 7/11/2024
3.6.2024.7100100 104 7/10/2024
3.6.2024.7090099 105 7/9/2024
3.6.2024.7090098 104 7/9/2024
3.6.2024.7090097 90 7/9/2024
3.6.2024.7090096 105 7/8/2024
3.6.2024.7080095 107 7/8/2024
3.6.2024.7080094 95 7/8/2024
3.6.2024.7080091 96 7/8/2024
3.6.2024.7050090 95 7/5/2024
3.6.2024.7040089 119 7/4/2024
3.6.2024.7030088 113 7/3/2024
3.6.2024.7020087 101 7/2/2024
3.6.2024.7020086 114 7/2/2024
3.6.2024.7010085 112 7/1/2024
3.6.2024.7010084 111 7/1/2024
3.6.2024.6290083 115 6/29/2024
3.6.2024.6280082 114 6/28/2024
3.6.2024.6270081 109 6/27/2024
3.6.2024.6260080 107 6/26/2024
3.6.2024.6250079 97 6/25/2024
3.6.2024.6250078 106 6/25/2024
3.6.2024.6250077 109 6/24/2024
3.6.2024.6240076 85 6/24/2024
3.6.2024.6240075 104 6/24/2024
3.6.2024.6200074 102 6/20/2024
3.6.2024.6190073 112 6/19/2024
3.6.2024.6180072 118 6/18/2024
3.6.2024.6170071 120 6/17/2024
3.6.2024.6150070 120 6/15/2024
3.6.2024.6140069 114 6/14/2024
3.6.2024.6130068 121 6/13/2024
3.6.2024.6130067 109 6/13/2024
3.6.2024.6120062 107 6/12/2024
3.6.2024.6120061 103 6/12/2024
3.6.2024.6110060 101 6/11/2024
3.6.2024.6090059 109 6/9/2024
3.6.2024.6060058 109 6/6/2024
3.6.2024.6050057 108 6/5/2024
3.6.2024.6040056 120 6/4/2024
3.6.2024.6030055 98 6/3/2024
3.6.2024.5310054 113 5/31/2024
3.6.2024.5300053 113 5/30/2024
3.6.2024.5290052 123 5/29/2024
3.6.2024.5290051 113 5/29/2024
3.6.2024.5280050 105 5/28/2024
3.6.2024.5270049 116 5/27/2024
3.6.2024.5250048 122 5/25/2024
3.6.2024.5250047 123 5/25/2024
3.6.2024.5240046 124 5/24/2024
3.6.2024.5240045 120 5/24/2024
3.6.2024.5240044 130 5/24/2024
3.6.2024.5240043 128 5/24/2024
3.6.2024.5230039 112 5/23/2024
3.6.2024.5230038 118 5/23/2024
3.6.2024.5230037 126 5/23/2024
3.6.2024.5220036 117 5/23/2024
3.6.2024.5220035 129 5/22/2024
3.6.2024.5220034 122 5/22/2024
3.6.2024.5210033 129 5/21/2024
3.6.2024.5210032 123 5/21/2024
3.6.2024.5200031 117 5/20/2024
3.6.2024.5170030 129 5/17/2024
3.6.2024.5160029 100 5/16/2024
3.6.2024.5160028 129 5/16/2024
3.6.2024.5150027 103 5/15/2024
3.6.2024.5140026 105 5/14/2024
3.6.2024.5130025 83 5/13/2024
3.6.2024.5130024 96 5/13/2024
3.6.2024.5110024 92 5/11/2024
3.6.2024.5110023 81 5/11/2024
3.6.2024.5110022 95 5/11/2024
3.6.2024.5100021 99 5/10/2024
3.6.2024.5100020 100 5/10/2024
3.6.2024.5090019 103 5/9/2024
3.6.2024.5080018 101 5/8/2024
3.6.2024.5080017 98 5/8/2024
3.6.2024.5070016 92 5/7/2024
3.0.2024.819-beta1233 94 8/19/2024

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