Docs
Launch GraphOS Studio

Understanding graphs

The heart of Apollo GraphOS


is a platform for building and managing graphs. Each corresponds to a service in your organization.

A service usually runs in more than one environment—for example, staging or production—so every graph in has one or more variants that each correspond to one environment:

A graph in GraphOS
Staging
variant
Production
variant

Each of a keeps track of its own separate and metrics.

Graph types

Every in is one of these graph types:

Graph typeDescription

A consisting of:

  • A -hosted
  • One or more hosted in your infrastructure

Recommended for all organizations getting started with .

(Enterprise only)

A consisting of:

  • A hosted in your infrastructure
  • One or more hosted in your infrastructure

Recommended for enterprise organizations that require full customization of their , usually for advanced performance or data compliance reasons.

(Enterprise only)

A single service hosted in your infrastructure with no .

⚠️ Not recommended.

Cloud supergraphs

NOTE

Cloud require an Apollo organization on the (free or paid) or .

Cloud are recommended for every organization that's getting started with . For every of a cloud supergraph, GraphOS provisions and manages a that acts as the variant's public endpoint. Application clients communicate with this endpoint instead of communicating directly with your (s):

Your infrastructure
GraphOS
Your GraphQL
server
Router
Clients

The automatically reports certain metrics to , so you don't need to configure this reporting in your .

Cloud use an architecture called

. With federation, you can distribute your 's capabilities across multiple services, which are known as . The executes client across multiple subgraphs as needed:

Your infrastructure
GraphOS
Products subgraph
Reviews subgraph
Router
Clients

Even if your API currently uses only one , a cloud helps you add more later as your organization grows.

Get started with a cloud supergraph

Self-hosted supergraphs

Self-hosted are an

for organizations with advanced performance or compliance requirements. If your organization doesn't currently have an , you can test out this functionality by signing up for a free
Enterprise trial
.

With a self-hosted , does not provision a for your supergraph. Instead, you host your supergraph's router in your own infrastructure:

Your infrastructure
Router
Products subgraph
Reviews subgraph
Clients

Your is an instance of

(cloud use the under the hood).

Self-hosted provide full control over your , but they also require handling its deployment and management. Before you adopt this graph type, make sure you have the necessary team structure to properly manage an additional service in your infrastructure.

Get started with a self-hosted supergraph

Monographs

require an Apollo organization on the .

A is a graph that consists of a single with no :

Your infrastructure
GraphQL server
Clients

⚠️ CAUTION

Apollo strongly recommends against . A monograph introduces technical and logistical scaling issues as more teams contribute to your graph and its schema.

Additionally, the provides essential functionality beyond support for multiple . It also enables powerful features like

@defer support
and straightforward
metrics reporting
.

Creating graphs

You can create a cloud or a non-cloud (self-hosted or ).



To create a cloud , see the

.

Next, you need to publish your 's schema(s) to Apollo using the . For details, see

.

Variants

To distinguish between instances of the same running in different environments (such as staging and production), you define multiple of your graph. Each variant has its own schemas, along with its own change history and metrics.

Each of your 's is shown in

:

Schema Changelog tab

Creating a variant

See

.

Publishing schemas

See

.

Previous
Intro to GraphOS
Next
Routing
Edit on GitHubEditForumsDiscord

© 2024 Apollo Graph Inc.

Privacy Policy

Company