Files
Evgeny @ SimpleX Chat 35d4065f32 specs for transport
2026-03-11 17:52:57 +00:00

915 B

Simplex.Messaging.Transport.HTTP2.Server

HTTP/2 server with inactive client expiration. The single-queue server is for testing only.

Source: Transport/HTTP2/Server.hs

Inactive client expiration

runHTTP2ServerWith_ tracks last activity per client via a TVar SystemTime. A background thread (expireInactiveClient) periodically checks whether the client has been inactive beyond the ExpirationConfig threshold. If so, it calls closeConnection tls.

The activity timestamp is updated on every HTTP/2 request (before dispatching to the handler).

getHTTP2Server — testing only

The source comment states: "This server is for testing only, it processes all requests in a single queue." getHTTP2Server puts all requests on a single TBQueue. runHTTP2Server dispatches requests directly via H.run without queueing.