Application Streaming: On-Demand Software Delivery
Application streaming delivers software to endpoints on-demand — downloading and executing only the portions of an application needed at any given moment, rather than requiring a full installation. This approach combines the manageability of centralized delivery with the performance of local execution.
What Is Application Streaming?
Application streaming is a delivery technology where application code and assets are stored on a central server and delivered to endpoints in real time as needed. When a user launches a streamed application, only the initial code required for startup is downloaded. As the user interacts with the application, additional components are fetched in the background. The application runs locally on the endpoint, providing native performance without a full installation.
This is different from traditional VDI or application virtualization where the entire application package is delivered before execution. Streaming is particularly useful for large applications (like CAD tools or creative suites) where full downloads would be impractical.
How Application Streaming Works
- Packaging: The application is analyzed and packaged into a virtualized format with all dependencies included. The package is split into small blocks or pages.
- Publication: The packaged application is published to a streaming server or management console.
- Launch: The user launches the application from a portal, client, or shortcut. The streaming client downloads the startup blocks.
- Execution: The application begins running while additional blocks stream in the background. The user experiences near-native launch times.
- Caching: Frequently used blocks may be cached locally for faster subsequent launches. Some solutions support offline execution after initial streaming.
Key Benefits
- Instant-On Experience: Users can launch large applications almost immediately without waiting for full downloads.
- Reduced Bandwidth: Only needed application blocks are delivered over the network, minimizing bandwidth consumption.
- Simplified Management: Updates are applied centrally — users always get the latest version on next launch.
- Legacy Compatibility: Older applications that require specific OS versions or configurations run in virtualized environments.
- No Administrative Rights: Users can run streamed applications without local admin privileges.
- Offline Support: Many streaming solutions cache the entire application after first use, enabling offline access.
Application Streaming vs. Traditional Application Virtualization
While related, application streaming and application virtualization address different needs:
- Scope: Streaming focuses on on-demand delivery of application blocks; virtualization focuses on OS isolation and compatibility.
- Delivery Model: Streaming delivers application code incrementally; virtualization typically delivers the complete package upfront.
- Use Cases: Streaming excels for large, infrequently used applications; virtualization is better for frequently used apps where conflict isolation matters.
- Technology Stack: Streaming requires a streaming server and client; virtualization requires a packaging/sequencing tool and delivery infrastructure.
Many modern solutions combine both approaches — virtualizing the application environment while streaming the application payload for optimal performance.
Popular Streaming Solutions
- Numecent Cloudpaging: Specializes in page-level streaming where only the specific pages of code needed for execution are delivered. Minimal bandwidth footprint and supports offline play.
- Microsoft App-V: Includes streaming capabilities through its Streaming Server or Configuration Manager integration. Includes background fetching and on-demand delivery.
- VMware ThinApp: While primarily a packaging tool, ThinApp can integrate with streaming servers for on-demand delivery of packaged applications.
- Citrix DaaS: Supports application streaming via its provisioning model, delivering apps to endpoints as needed with HDX protocol optimization.
Is Application Streaming Right for You?
Application streaming is ideal for organizations that need to deliver large, complex applications to users without the bandwidth overhead of full downloads. It is particularly valuable for: organizations with limited WAN bandwidth, environments with shared or non-persistent workstations, scenarios requiring instant access to infrequently used applications, and organizations dealing with large legacy applications that are impractical to deliver via traditional methods.
For a complete comparison of delivery methods and vendor recommendations, download our free buyer's guide. See also our application virtualization software comparison.