The front-end IP address receives the client requests.
An optional Web Application Firewall checks incoming traffic for common threats before the requests reach the listeners.
One or more listeners receive the traffic and route the requests to the back-end pool.
Routing rules define how to analyze the request to direct the request to the appropriate back-end pool.
A back-end pool contains web servers for resources like virtual machines or Virtual Machine Scale Sets. Each pool has a load balancer to distribute the workload across the resources.
Health probes determine which back-end pool servers are available for load-balancing.
Application layer routing
Use application layer routing to direct traffic to a back-end pool of web servers based on the URL of a request. The back-end pool can include Azure virtual machines, Azure Virtual Machine Scale Sets, Azure App Service, and even on-premises servers.
Round-robin load balancing
Employ round-robin load balancing to distribute incoming traffic across multiple servers. Send load-balance requests to the servers in each back-end pool. Client requests are forwarded in a cycle through a group of servers to create an effective balance for the server load.
Session stickiness
Apply session stickiness to your application gateway to ensure client requests in the same session are routed to the same back-end server.
Supported protocols
Build an application gateway to support the HTTP, HTTPS, HTTP/2, or WebSocket protocols.
Firewall protection
Implement a web application firewall to protect against web application vulnerabilities.
Encryption
Support end-to-end request encryption for your web applications.
Load autoscaling
Dynamically adjust capacity as your web traffic load changes.
Azure Application Gateway offers two primary methods for routing traffic:
Path-based routing sends requests with different URL paths to different pools of back-end servers.
Multi-site routing configures more than one web application on the same application gateway instance.
You can implement Application Gateway to rewrite HTTP headers.