Space for Fakhrul Islam
Breadcrumbs

Storage & Streaming Workflow

The Eagle 3D Streaming (E3DS) platform utilizes a dual-storage architecture to manage application deployment and streaming across multiple streamer machines. This system is designed to balance performance, scalability, and availability.

There are two primary storage systems:

  • C Drive (Local Storage)

  • Shared Drive (Centralized Storage)








Storage Architecture

1. C Drive (Local Storage)

  • Each streamer machine has its own isolated C drive

  • Applications can be stored and executed locally on that machine

  • No synchronization between streamer machines

  • State persists only within that specific machine



2. Shared Drive (Centralized Storage)

  • A centralized storage system connected to multiple streamer machines

  • Applications uploaded by users are stored in the shared drive

  • Streamers connected to the shared drive access the same application data

  • State is shared across all connected machines


ChatGPT Image Mar 26, 2026, 11_43_56 AM.png
Fig 1. Storage and Streaming Architecture







Application Upload Workflow

  1. User uploads an application

  2. The application is stored in the cloud

  3. It is then placed into a shared drive

  4. Streamer machines connected to the shared drive can directly stream the app

  5. Streamer machines that not connected to the shared drive download the app in its C drive and then stream from C drive








Streaming Behavior

Case 1: Streamer Connected to Shared Drive

  • Application is streamed directly from the shared drive

  • All streamer machines share the same application state

Example

  • User A connects to Streamer 5 → sets language to Bengali

  • User B connects to Streamer 6 → sees Bengali

  • User B changes language to German

  • User C connects to Streamer 9 → sees German

State is shared across all connected machines




Case 2: Streamer NOT Connected to Shared Drive (C Drive Mode)

  • Application runs from the local C drive

  • Each machine maintains its own independent state

Example

  • User A connects to Streamer 1 → sets language to Arabic

  • User B connects to Streamer 1 → sees Arabic

  • User B changes to French

  • User C connects to Streamer 1 → sees French

BUT:

  • User D connects to Streamer 2 → sees default English

  • User E connects to Streamer 3 → sees default English

Each machine behaves independently








Key Differences

Feature

C Drive

Shared Drive

Storage Type

Local

Centralized

Data Sharing

No

Yes

State Persistence

Per Machine

Global

Isolation

High

Low

Consistency

Low

High








Limitations & Considerations (Important)

1. Data Persistence Across Users (Security Risk)

Problem

In both C drive and shared drive scenarios:

  • Data generated by one user (e.g., screenshots, saved files)

  • May be visible to the next user

Example

  • User A takes a sensitive screenshot

  • Stored in app directory or Documents

  • User B connects later

  • User B can access that screenshot

This creates a serious security and privacy concern



  • Implement dynamic per-session folder creation

Approach
  • On each session start:

    • Create a unique folder (e.g., timestamp/session ID)

    • Store user-generated files inside that folder

Example

Documents/
   Session_12345/
   Session_67890/
  • Each user gets isolated storage

  • Prevents cross-user data exposure









2. File Upload / Download Exposure

Problem

User files remain accessible to others.

Example

  • User A uploads a file

  • File is stored locally or shared drive

  • User B connects later

  • User B can access that file

Data leakage risk










3. Shared State Overwriting (Shared Drive Issue)

Problem

  • One user’s changes affect all users

Example

  • User A sets language → Bengali

  • User B → sees Bengali

  • User B changes → German

  • All future users → see German

No session isolation



Impact

  • Unpredictable user experience

  • Not suitable for personalized workflows







4. Inconsistent Behavior Across Machines (C Drive Issue)

Problem

  • Different machines behave differently

Example

  • Streamer 1 → Language = French

  • Streamer 2 → Language = English

Users get inconsistent experience depending on machine





5. Cold Start Delays

When Shared Drive is Not Connected

  • App must be downloaded to C drive if the app version is not available in C drive of that machine

  • Causes:

    • Long loading time

    • “Acquiring phase” delays






 


Need help?

🛠️ Contact our Support Team

💬 Join the Community on Discord

🆓 Get Started for free

 

Follow us on:

Facebook | GitHub | LinkedIn | YouTube