• hub-websocket: clients from the web connect via websockets. This service also controls the database, etc.

    • During normal usage, it is expected that up to 50 simultaneous connections are possible, 30 are great.

    • It’s fine to run 5 or more websocket hubs.

  • hub-proxy: establishes a connection to the projects, requires a client with a valid authentication.

    • During normal usage, at least 50 simultaneous connections are possible.

    • It’s fine to run 5 or more proxy services.

  • hub-next:

    • Serves dynamic pages like the landing page at /, /info, /policies, etc.

    • This service also renders shared files of users at /share or even a custom name at /[user name]/[project nickname]/[share nickname].

    • Finally, it also serves /api/v2.

    • There should be at least two next services running.

  • hub-maintenance-*: single pods, remove/compact data in the database.

  • hub-stats: single pod, collects statistics about CoCalc itself

  • hub-api: serves the /api/v1 endpoint.

Restart an aspect e.g. via kubectl rollout restart deploy hub-next.

Restart all hubs via kubectl rollout restart deploy -l group=hub.