ULinkRPC.Server
0.8.2
dotnet add package ULinkRPC.Server --version 0.8.2
NuGet\Install-Package ULinkRPC.Server -Version 0.8.2
<PackageReference Include="ULinkRPC.Server" Version="0.8.2" />
<PackageVersion Include="ULinkRPC.Server" Version="0.8.2" />
<PackageReference Include="ULinkRPC.Server" />
paket add ULinkRPC.Server --version 0.8.2
#r "nuget: ULinkRPC.Server, 0.8.2"
#:package ULinkRPC.Server@0.8.2
#addin nuget:?package=ULinkRPC.Server&version=0.8.2
#tool nuget:?package=ULinkRPC.Server&version=0.8.2
ULinkRPC.Server
Server runtime implementation for ULinkRPC.
Install
dotnet add package ULinkRPC.Server
Dependencies
ULinkRPC.Core
ULinkRPC.Server has no hard dependency on concrete serializer or transport implementations.
Includes
RpcServiceRegistryRpcSessionRpcServerHostBuilderRpcServerHostRpcGeneratedServiceBinder
Recommended Usage
Use RpcServerHostBuilder to compose serializer, transport, generated binders, and security in one place:
var builder = RpcServerHostBuilder.Create()
.UseCommandLine(args)
.UseSerializer(new MemoryPackRpcSerializer())
.UseKeepAlive(TimeSpan.FromSeconds(15), TimeSpan.FromSeconds(45))
.UseAcceptor(new TcpConnectionAcceptor(20000));
await builder.RunAsync();
When the entry assembly contains code-generated AllServicesBinder, the builder binds it automatically.
Low-Level Usage
Pass ITransport and IRpcSerializer explicitly when you need a manually managed per-connection session:
var session = new RpcSession(transport, serializer);
Optional transport ownership:
await using var session = new RpcSession(transport, serializer, ownsTransport: true);
When ownsTransport is true, disposing the session also disposes the transport.
KeepAlive
RpcServerHostBuilder.UseKeepAlive(...) enables connection-level idle timeout handling for accepted sessions.
- The server automatically replies to client keepalive pings with pong.
- When enabled on the host, each
RpcSessionalso tracks idle time and disconnects sessions that remain inactive longer than the configured timeout.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- ULinkRPC.Core (>= 0.6.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.