temporalio / temporalio/features
Allow SDKs to support connecting to multiple endpoints for Multi-region Namespaces
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 32
- Forks
- 28
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 7
Description
Is your feature request related to a problem? Please describe.
Temporal Cloud customers (specifically those with more complicated network setups using Private Connectivity) encounter issues due to misconfigured Workers when a Namspace is failed over to a standby region in the event of an incident. To improve this user experience, we should consider switching to a per region end point and change our SDKs to natively handle failovers (instead of relying on manual user setup).
Describe the solution you'd like
There are three requirements in this task:
- Allow SDK to be able to connect to multiple endpoints for a namespace. Typical use case is region specific endpoints for MRN, and different endpoints for on-prem to cloud migration.
- SDK should send requests to the “active“ endpoint based on the ns info it gets from Temporal server.
- SDK should health check both endpoints to prevent connection errors post namespace failover.
Per-SDK Tickets
TBA
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or SDK entry points. Start by identifying the affected SDK implementations and how namespace information, endpoint selection, and health checks are currently handled; done means supporting multiple endpoints, choosing the active endpoint, and checking both endpoints during failover.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend, distributed-systems, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100