Namespace Design

What’s the recommend usage of Temporal Namespace?

Should I run different applications on a single server but on different namespace?
Ex : App1 on Namespace 1 of Server 1
App2 on Namespace 2 of Server 1

Should I run different env of a single application on a single server on different namespace. 1 server for each application.
Ex: App1 DEV on Namespace 1 of Server 1
App1 UAT on Namespace 2 of Server 1

App2 Dev on Namespace 1 of Server 2
App2 UAT on Namespace 2 of Server 2

What’s the advantage of running on the namespaces in the same server vs different server?

Namespace is the unit of isolation and rate limiting. If you have multiple applications you can isolate them in different namespaces, which can prevent situations where one application can experience latencies due to another application in the same namespace experiencing large load.

If you are running a single cluster, each of your applications (regardless of namespace) should in cases where isolation is important, and where data is valuable, use their own client-side data encryption.

What’s the advantage of running on the namespaces in the same server vs different server?

Having a single cluster with multiple namespaces would give you better resource utilization and you would have less maintenance. Multiple clusters would give you better isolation between the running apps.

If isolation is not a very strong concern you have, it’s probably best to start off with a single cluster (multiple namespaces) and go from there.