open-saves
open-saves copied to clipboard
Architecture and terminology
Here's the overall architecture of Triton:

In scope:
- Triton server
- Client SDKs for Java and Go
Out of scope:
- Game servers and/or gateway servers for each game service
- Game clients and direct access from game clients
Terminology
- User: developers who want to build services with Triton
- Server: the triton server running on Cloud Run
- Client: the client sdks that users use to integrate their services to Triton
- SDKs: client code to call triton services
- Game client: actual game client on PC and game consoles
- Game server: game servers or gateway servers that consumes the Triton APIs to store/load data
I'll add this to the docs directory once I get sign-offs. I'll update this issue as I get feedback.
Here is an architecture diagram that includes integration with pluggable interfaces for authentication and authorization in Triton.


One proposed change to support large-file uploads. gRPC streaming is currently not supported by Cloud Run, so one solution is to create a separate server that handles large file upload/download via HTTP. This creates some added overhead on the game server/gateway server perspective (needing to switch between protocols).