microsoft / microsoft/dcp

Sticky TCP sessions

Open
#31 0 comments 0 reactions 1 assignee View on GitHub

@karolz-ms is already working on this.

Since Jul 8, 2024.

area-orchestrator enhancement
Dominant language
Go
Stars
189
Forks
24
Avg merge
2d 16h
Merged PRs (30d)
18

Description

.NET SignalR is an example of a framework that requires "sticky" sessions (in most cases) between the client and the server.

DCP could support this by ensuring that the client (identified via a hash of its address and port) is always proxied to the same endpoint. The assumption here is that the set of endpoints (proxy configuration) is stable and all endpoints are responsive. We could go as far as maintaining the "stickyness" as long as, for a given client, its "old endpoint" is still available after a configuration change.

Stickyness would be an optional property on the Service spec, defaulting to false (i.e. Services by default are non-sticky).

Relevant Aspire bug: https://github.com/dotnet/aspire/issues/1660

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.