Systems integration
Conduit
A .NET communication library.
We built Conduit for communication between applications and services. It includes ARC over TCP, Pulse over UDP, and integrations for IRC and Discord.
Conduit
Modular .NET communication libraryPulse / UDP
Section 01
Handling slow receivers and busy connections.
ARC uses TCP; Pulse uses UDP. Both provide request limits and bounded queues to control how much work a connection accepts. ARC also distinguishes a receiver processing queued messages from a peer that has stopped responding.
Faster responses. More work handled.
In our local API test, ARC delivered 4.4× faster typical responses and handled 4.3× as many requests per second.
ARC vs HTTP
Typical response time
Milliseconds · lower is better
Scale: 0–0.8 ms
Requests handled per second
Higher is better
Scale: 0–7,000 requests/s
In a local API test, ARC kept one connection open while HTTP connected for each request.
Section 02
Commands through IRC and Discord.
Conduit uses IRC to coordinate distributed systems and Discord to carry remote commands and updates.
Section 03
Deadlines and cancellation.
Shared components handle commands, cancellation, deadlines and structured errors. Applications can stop requests that are no longer needed and handle failures consistently across connections.