Persisting User Settings in Non-Persistent App Streaming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional techniques for saving and applying user settings in non-persistent application streaming environments require burdensome infrastructure, leading to performance issues and increased points of failure due to reliance on directory servers for data communication and storage.

Innovation Solution

A system where a compute instance directly downloads and uploads user settings files from a storage server without using intermediate directory servers, allowing local updates and reducing network traffic, thus minimizing infrastructure requirements and failure rates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If directory servers are used to implement active directory solution for saving and applying user settings, then user settings can be persisted across sessions, but infrastructure complexity increases and performance decreases

Engineering Contradiction:
Improveuser settings persistenceVSAvoidinfrastructure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the user settings data from the complex directory server infrastructure and stores it as simple files in a file storage service. This separates the data storage function from the complex active directory system, allowing settings persistence without requiring directory servers.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a copy of the user settings file and places it in a location accessible to the application streaming service. This allows the settings to be retrieved and applied without requiring complex real-time synchronization with directory servers, simplifying the infrastructure while maintaining persistence.

Inventive Principle:
Principle #26Copying

2Reliability

If directory servers are used for user settings management, then settings can be maintained across sessions, but network bandwidth consumption increases

Engineering Contradiction:
Improvesettings maintenanceVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The user settings file is downloaded and cached in the file storage service before the application streaming session begins. This preliminary action allows the settings to be available locally during the session, reducing the need for continuous network communication with directory servers and lowering bandwidth consumption.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If traditional active directory solution is implemented, then user settings persistence is achieved, but setup and maintenance time increases

Engineering Contradiction:
Improvesettings persistenceVSAvoidsetup and maintenance time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent uses simple files in a file storage service instead of complex directory server objects. These file-based settings are easy to create, modify, and delete, requiring minimal setup and maintenance time compared to traditional active directory solutions while achieving the same persistence functionality.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS11782731B1Persisting user settings for non-persistent application streaming environments
Publication Date: 2023.10.10 AMAZON TECH INC
  • US11782731B1 patent drawing
  • US11782731B1 patent drawing
  • US11782731B1 patent drawing

AI summary

Methods, systems, and computer-readable media for persisting user settings for non-persistent application streaming environments are disclosed. An application streaming service may receive a selection of an application for a user and assign a compute instance to the user. An agent provided by the compute instance obtains a storage location of a user settings file associated with the user (e.g., based on use of the application during a previous session). The agent downloads the user settings file from the storage location to the compute instance and mounts the user settings file at a file system location associated with an execution environment of the compute instance. The application is executed and the user settings file is updated during use of the application. In response to termination of the session, the agent uploads the updated user settings file to a storage location. The user settings file is not persisted on the compute instance.