Skip to content

Messaging

Managed Centrifugo on your own cluster

Real-time messaging: clients hold a WebSocket or SSE connection, your backend publishes to channels over an HTTP API.

Created inside a project, beside the apps that use it. Each project gets its own instance, storage and credentials.

A recent addition. It installs today, and the console marks it as new until it has run on a customer's cluster.

01What it does

Centrifugo, run for you

Centrifugo on the vendor's chart, single node on the in-memory engine.

The piece between your backend and the browsers that want to hear from it. Clients hold a WebSocket or SSE connection to Centrifugo; your backend publishes to channels over an HTTP API and never manages a socket. Bound apps get the URL, the API key and the HMAC secret that signs connection tokens.

A single node on the in-memory engine, with the built-in admin UI. Each connection holds a few tens of kilobytes, so the size decides how many stay open. Nothing is stored, so there is no volume; the admin UI and the client endpoint can be published on a hostname.

02Options

What you choose

What the console asks when you create it, in the catalog's own numbers. Anything marked chosen once cannot change without creating a new instance.

Sizes
small 256Mi, medium 1Gi, large 2Gi of memory
Storage
None; the in-memory engine
Hostname
The client endpoint and admin UI (8000) can be published on a domain
Pause
Yes

03Binding

What your app receives

Bind it to an app and these arrive as environment variables. The values are generated once into a secret and reach the app from there, rather than as something you copy.

  • CENTRIFUGO_HOST
  • CENTRIFUGO_PORT
  • CENTRIFUGO_URL
  • CENTRIFUGO_API_KEY
  • CENTRIFUGO_TOKEN_HMAC_SECRET

04Adding it

Add Centrifugo to a project

The same four steps as every service in the catalog.

  1. 01Open a project and go to Services.
  2. 02Pick it from the catalog and choose its options. Only the size is required; everything else has a default.
  3. 03Create it. Anyport installs it into the project's namespace, generates its credentials into a secret there, and tracks its health.
  4. 04Bind it to an app. The connection details arrive as environment variables, and rotating the credential never means editing an app.