What is application delivery?

Application delivery is the process of bringing an application (typically a web application) to end users while the application’s data processing and computing is executed inside a data center or cloud environment. This enables a great user experience for remote users by providing access to application functionality across an organization’s network without requiring the application to be installed on each user’s local desktop or server. Application delivery is important to ensuring remote and in-office workers have anywhere access to the web and cloud apps they need to be productive—all while ensuring high performance, availability, and security.

An essential element of application delivery is the application delivery controller (ADC). ADCs are purpose-built network appliances that improve the security, performance, and reliability of applications delivered via the web. As demand increases for older load balancing appliances to handle more complex application delivery requirements, modern ADCs help legacy applications adapt to the networks and protocols in place today. This ensures even legacy applications perform optimally and securely while always being always available for remote users.

Learn more about application delivery:

What is an application delivery platform?

An application delivery platform is a suite of tools that make it easier to deliver applications reliably and securely to end users. The tools in an application delivery platform handle application services such as traffic management in data centers and cloud environments, load balancing, and security controls. A strong application delivery platform is important to ensuring remote and in-office workers have anywhere access to the web and cloud apps they need to be productive—all while ensuring high performance, availability, and security.

What are the key elements of application delivery?

Application Delivery Controller (ADC)

An application delivery controller employs algorithms and policies to determine load balancing, or how inbound application traffic should be distributed. The most basic form of traffic management is round robin, which forwards client requests to each server in the order the requests are submitted. This method assumes all application servers are identical without considering account health or responsiveness. More sophisticated traffic management can implement additional policies that direct the ADC to check certain criteria before sending an an inbound request to an application server. Modern application delivery controllers can inspect packet headers for keywords or requested file types and direct the request to the appropriate server based on this information.

Learn how Citrix Application Delivery Controller increases agility and speed

Citrix Application Delivery Controller offers consistent and secure application delivery for monolithic and microservices-based applications.

Load balancing

Load balancing is the efficient distribution of application traffic across multiple servers. Load balancers work by monitoring the health of back end resources and only sending traffic to servers that are capable of fulfilling the application request. This traffic management is important to application delivery because it works inside an ADC to broadly improve the performance of web and microservices-based apps—no matter where they’re hosted. Server helps distribute traffic across a cluster of servers to optimize utilization, improve responsiveness and increase availability.

Application delivery management (ADM)

Application delivery management refers to technology that provides holistic visibility into how applications are delivered across multi-cloud environments. Because many enterprises rely on multiple cloud and on-premises environments, gaining useful insight into how applications are deploying and functioning can be challenging. A strong application delivery management solution makes it simpler for IT to monitor application delivery everywhere—streamlining operations, speeding up the troubleshooting process, and improving security.

Application delivery network (ADN)

An application delivery network refers to services deployed via a network that help ensure high availability, security, and visibility for web applications. ADNs work by speeding up data center load times and increasing IT visibility across the application delivery process. An ADN is closely related in design and purpose to a Content Delivery Network (CDN); the primary difference is that CDNs speed the delivery of static content (like high-res images) and ADNs accelerate dynamic content (like web apps).

What are the benefits of modern application delivery?

Cost savings and efficiency
One benefit of modern application delivery is the improved efficiency of enabling anywhere access to business apps via the web instead of relying on locally installed applications for each user’s device. This is because delivering web apps to users as needed is more cost-effective than buying licenses for each user’s device. In addition, as more users access web apps on mobile devices and in the cloud, modern application delivery empowers these mobile workers to be productive anywhere rather than requiring them to work inside an office’s local area network (LAN). When an organization’s application delivery offers a great web app experience everywhere, that organization spends less on customer support, hardware, and upkeep.

Improved productivity
For employees to do their best work, they need high performance and availability from their web and cloud applications. Modern application delivery makes this possible by ensuring a seamless application experience. So even when an application server fails, a good application delivery solution will automatically failover the in-use application to a healthy server without the end user noticing the difference.

Better mobile performance
Modern application delivery also offers application performance benefits across mobile networks. Web pages built for high-speed internet links can fail to deliver the same user experience on mobile devices connecting over a bandwidth-constrained network. Modern application delivery controllers can address this by optimizing web content delivery over mobile networks using domain sharding. This involves connection-layer optimization being applied to one domain, and then breaking down content on each page into a sequence of subdomains that permit a larger number of channels to be opened simultaneously. This improves page load time and performance. It is also possible to optimize delivery of web pages that contain large images by compressing these files. This reduces download times to improve the end user experience.

Stronger user security
62 percent of organizations do not feel confident about their application security, and more than 40 percent have already suffered application breaches1. As increased mobility and more diverse cloud environments enlarge an organization’s attack surface, modern application delivery can play an important role in security. Because application delivery controllers authenticate each user attempting to access an application, they are a common entry point or gateway to an organization’s network. If an application is SaaS-based, the ADC can validate a user’s identity using an on-premises Active Directory data store. This eliminates the need to store credentials in the cloud, improving security and enhancing the user experience by providing single sign-on capabilities across multiple applications. Other common security features in an application delivery solution include a web application firewall, converged load balancing, and advanced Layer 7 protection.

How should I choose an application delivery solution?

Single code base
More than 84 percent of organizations have a multi-cloud strategy in place2, relying on cloud services like Microsoft Azure and AWS for their applications. This can lead to application components being distributed across different cloud environments, leading to fragmentation and other application management challenges. That in mind, it’s important to adopt an application delivery solution with a single code base across all ADCs. With a single code base across your ADC portfolio, you can ensure operational consistency for monolithic and microservices-based applications across multi-cloud. This gives you greater agility and speed in your application strategy.

Global server load balancing
Load balancing is a critical service in any high-traffic datacenter, but your application delivery controller should also be able to redirect traffic to a cluster of servers located in a different datacenter. This is known as global server load balancing. The servers in the other datacenter can be front-ended by another ADC, which works in tandem with the first appliance. Each application delivery controller can detect which datacenter is closest to a given user, and then route the client request to a server in that datacenter. This process minimizes latency and round trip times for the user’s request, ensuring a better application experience.

Sophisticated security
More than 92 percent of reported vulnerabilities come from an organization’s applications, not their network3. This makes it important to choose an application delivery solution that can protect your applications and APIs from known and zero-day attacks. Look for ADCs that include an integrated web application firewall, bot management, and volumetric distributed denial of service (DDoS) protection. It’s also important your application delivery solution provides good price-per-performance for SSL. This works by terminating SSL and TLS first and then service chaining, simplifying your SSL and TLS termination by only doing it once instead of encrypting all traffic individually.

Always-on application availability
Many employees are no longer forced to use company-owned equipment inside an office to get their work done. They often use personal devices to work whenever and wherever they choose. To support employees working at any time, IT departments must ensure workplace servers and applications are always available. However, servers can fail for many reasons such as mechanical problems, over-utilization, and security breaches. If a server goes down, applications running on it will become unusable or inaccessible. This makes it important for your ADCs to ensure high application availability by balancing application workloads across a cluster of active servers in multiple sites. This enables seamless failover of applications, translating to an uninterrupted user experience even if an application server goes down.

Additional resources