Skip to content

Massive Cluster

What is Massive Cluster

Massive Cluster is a deployment option that allows a project to be run simultaneously on multiple servers in multiple regions, e.g. Europe, US, and Asia.
This setup enables global scalability and ensures that users from different regions can interact in real-time.

You don't need to use Massive Cluster if you are building a small-scale application or if your application doesn't require global scalability.

All servers in regions operate independently of each other but can communicate via broadcasting, ensuring that many concurrent users (CCU) can interact within the same room.

This setup is essential for scaling multiplayer games and applications efficiently.

Key Features:

  • Broadcasting: Enables communication between different regions, ensuring seamless interaction among users.
  • Multi-Transport Support: Utilizes WebRTC Data Channel and WebSocket protocols simultaneously for different data types, optimizing traffic management.

Usage Scenarios:

  • Massive Multiplayer Online Games (MMOGs): Ideal for games requiring high CCU where players from different continents interact in real-time within large, persistent worlds.
  • Interactive Events: Suitable for global virtual events with thousands of participants from different continents interacting simultaneously.
  • Collaborative Applications: Useful for collaborative tools where multiple users from different regions need to work together in real-time, such as online whiteboards.

How to Use Massive Cluster

To use Massive Cluster in your project, follow these steps:

  1. Configure Logic
    To broadcast a message to all users in the same room in all regions, use the cluster option in the broadcast method:

    javascript
    $room.broadcast('SomeClientCommand', {
       param1: 'value1',
       param2: 'value2',
    }, {
       cluster: true
    });
    javascript
    $session.broadcast('SomeClientCommand', {
       param1: 'value1',
       param2: 'value2',
    }, {
       cluster: true
    });
  2. Deploy Your Project:
    To form Massive Cluster deployment, deploy your project in multiple locations. How to enable

    Then turn on the Massive Cluster feature to enable global scalability: How to enable