Delivering a quality user experience for business-critical applications is essential. Failure to do so can lead to problems with business continuity, loss of profit or even an inability to retain employees.
Consider a financial trading company with specific trading software. If that software is unavailable or unreliable with poor UX, this could directly negate potential profits by delaying a critical exchange.
There are many ways to deliver applications to the end-user, including desktop as a service (DaaS), VDI, published app, application delivery controller (ADC) and remote deployment. These methods fall into two main categories: centralized and decentralized application delivery services.
What is centralized application delivery?
In a centralized environment, the application and application delivery services are kept in the same place. This means that the application and any associated data are at a single location and don't leave the consolidated infrastructure. When end users access the application, they need to sign into the centralized environment via a VPN, virtual desktop or other method and work within that system.
The application server, database server, application data and the application front end are all within the same network. When a user signs into a desktop environment and launches an application from the centralized environment, only the application's image -- essentially a live, interactable video feed -- is transmitted to the end-user device. This delivery often takes place over the internet and with an ADC, which translates the images to an HTTPS connection, allowing end users to save access to the application.
Benefits of centralized application delivery
The biggest benefit of a centralized environment is that users can access the application from any place at any time via any device.
Another significant benefit is the security of the data within the application. It doesn't ever leave the centralized environment. The data cannot leak onto devices that are not secure or private.
Centralized application delivery services lowered the management burden of the environment. IT administrators only need to update the application within the centralized environment. They don't need to push updates onto the end-user devices because all user-facing apps and data stay in the centralized environment.
Drawbacks of centralized application delivery
The biggest drawback of this approach is its complexity. A centralized environment needs infrastructure where the user can sign in to start the application. That infrastructure must be accessible externally through the internet.
Consider a typical Citrix centralized environment as an example of this complexity -- although other vendors' application delivery services will have similar challenges. Organizations will need several components for their infrastructure, such as a license server, a SQL database, Delivery Controllers, Storefront, VDAs, an imaging system -- either MCS or PVS -- and an ADC Netscaler.
In some scenarios, IT teams must also worry about app performance within centralized application delivery services. Sending the application image back and forth to the end-user device can provide a better UX than sending application data itself. However, the performance depends on the application type and the network connection quality. A highly graphical application, such as AutoCAD or Photoshop, will perform worse when sending the application image over the internet because these applications require significant GPU power. Adding vGPUs to a centralized environment is doable but will make the environment even more complex and costly.
Types of centralized application delivery
Types of centralized application delivery include VDI, DaaS and virtual applications. The main way that DaaS and VDI differ from published virtual apps is that VDI and DaaS deliver a whole desktop experience by sending the image of the complete virtual desktop within the centralized environment. By contrast, a virtual app is just the image of the application. The most popular solutions like Citrix CVAD, VMware Horizon, and Microsoft Azure Virtual Desktop can do full desktop and virtual applications.
What is decentralized application delivery?
Decentralized application delivery creates a split between the application infrastructure and the application front end, which means that the application and database server are in a centralized environment. However, the application itself lives on the end-user device. Application data can live in between, meaning it can be in the centralized environment or on the end-user device. Users can often work from any place and time but still need their own devices. To access applications via this method, users must connect to the environment through a VPN and establish a connection with the application data on the back end.
Benefits of decentralized application delivery
A significant benefit of decentralized application delivery is its reduced complexity and costs. Users only need a device with the application installed and a basic VPN to do their work. Similarly, performance is a key benefit of decentralized application delivery. An application running locally on a device often runs faster than an application from a centralized published environment. This is especially true for graphical applications that can benefit significantly from running on a local device with a sufficient GPU.
Drawbacks of decentralized application delivery
Security is a massive drawback of this approach to application delivery. To leave company data on the end-user device means that either the data must be fully encrypted and protected via Azure Information Protection and data loss prevention tools or via completely secured tools, such as Microsoft Endpoint Manager. Another drawback is the management burden. Managing all the end-user devices via the tools is extra work. Additionally, pushing out application updates to all these devices can be a hassle for IT teams.
Types of decentralized application delivery
The most common type of decentralized application delivery is through a unified endpoint management (UEM) tool such as Microsoft Endpoint Manager -- formerly known as Intune. IT departments could also opt for an automatic deployment tool, such as Ivanti Automation and ServiceNow Orchestration. The big difference between these tools is that a UEM tool can deploy applications and manage the device via policies, security rules and other mechanisms. On the other hand, a deployment tool can only deploy applications.
Hybrid application delivery: a third approach
Organizations don't have to choose between centralized and decentralized. There are many examples of hybrid application deployment in the enterprise. For instance, there are software as a service (SaaS) applications that IT teams can deploy. SaaS application servers, databases and app data are stored centrally. However, the end-user can access and run the SaaS applications over the internet without needing a centralized application publishing infrastructure.
Another excellent hybrid approach are workspace portals that combine SaaS, local and published virtual applications in one place for the end-user. This gives IT teams more flexibility in deploying a specific application while the user must only worry about a single application interface.