top of page
1 day ago
4 min read

Microsoft announced public preview of HTTP/3 over QUIC in Azure Application Gateway on September 14, 2026. The update targets frontend client connections, with potential benefits for applications affected by connection-setup latency or unreliable networks. Read the Azure announcement.


This is an opportunity for a focused protocol experiment, not a reason to change every gateway. The preview's listener and security restrictions are important enough to review before choosing a test application.


What HTTP/3 Changes


HTTP/3 maps HTTP semantics onto QUIC. The protocol provides stream-level reliability and flow control, avoiding the TCP-level head-of-line blocking that can stall unrelated HTTP/2 streams after packet loss. QUIC also incorporates TLS 1.3. HTTP/3 protocol background in RFC 9114.


For an engineer evaluating the release, the useful question is where users lose time today. Is it initial connection setup, intermittent network loss, backend processing, or database access? Those are different bottlenecks. A transport change is more interesting when your evidence points to the client-facing connection than when a slow database query dominates every request.


My recommendation is to write down that hypothesis before touching the listener. Otherwise, a faster individual request can easily be mistaken for a meaningful improvement across the application.


Read the Preview Boundaries First


Microsoft's preview documentation states that the feature has no service-level agreement and is not recommended for production workloads. It is configured on individual Basic listeners, using the portal or REST API, with a predefined 2022 TLS policy supporting TLS 1.3. Preview scope and configuration.


The current exclusions include:


  • WAF gateways, multi-site listeners, and IPv6 listeners.

  • Mutual authentication and the Public-Private IP Same Port feature.

  • Azure CLI, Azure PowerShell, and Terraform configuration support.


Backend connections remain HTTP/1.1. This is not an HTTP/3 connection extending from the client through the gateway to application code. Current limitations and backend behavior.


If your application depends on WAF inspection or mutual authentication at the gateway, keep those requirements intact. My recommendation is to use a separate, non-production test application whose architecture fits the preview. Removing a required security control would invalidate the adoption case before performance testing even starts.


Verify the Protocol You Actually Negotiated


A successful browser response only proves that the request completed. It does not establish that the connection used HTTP/3.


For a pilot, capture the negotiated protocol in a capable browser or HTTP client and retain that observation with the test results. Keep the client version and network path in the record as well. Test from the networks that matter to your users, including managed corporate access and representative mobile connectivity where appropriate.


Include a controlled network condition where QUIC is unavailable, and observe the client's behavior. Do not label a run “HTTP/3” merely because the listener setting was enabled. Separate protocol negotiation, connection failure, and application failure in your evidence.


This is a proposed validation approach, not a report of a deployment or benchmark I have run.


Keep the Gateway Change Narrow


The documentation uses enableHttp3: true on the selected listener and REST API version 2023-02-01 or later. In the portal, create the gateway first, then configure a new or existing listener; the gateway creation flow does not expose the setting. Enable HTTP/3.


My implementation recommendation is to retain the complete gateway configuration before a change and review the resulting diff. A listener experiment should not unintentionally alter routing rules, probes, backend settings, or unrelated TLS policies.


If your deployment pipeline cannot yet represent the preview setting, document that gap and its owner. Establish how the test setting survives, or is deliberately removed by, the next normal deployment. An unexplained portal-only change is difficult to reproduce and easy to lose.


Measure User Experience, Not Just a Handshake


A useful test set would include:


  • Initial navigation or API connection from a fresh client session.

  • Repeated requests using an established connection.

  • A page or workflow making multiple concurrent requests.

  • Representative latency and packet-loss conditions in a controlled lab.

  • Authentication, uploads, cancellations, and retry behavior used by the application.

  • Error rate and tail latency alongside median request time.


Keep the backend version, payload sizes, gateway capacity, and test load comparable. Record the negotiated protocol for each group of results so that an unnoticed fallback does not distort the comparison.


Do not project a percentage improvement from protocol theory alone. A useful result is a repeatable change in the workload your users experience, with no new correctness or reliability problems.


Practical Cloud Engineer Takeaway


Start with one eligible non-production listener and an explicit performance hypothesis. Preserve the baseline, confirm HTTP/3 negotiation, test realistic network conditions, and verify that disabling the experiment restores the earlier behavior.


Keep the preview status and unsupported features visible in the decision record. A technically successful pilot does not remove those product limitations.


Who Should Care?


Azure networking teams and application engineers investigating client-facing latency, mobile-network behavior, or protocol evolution at Application Gateway.


Bottom Line


HTTP/3 is worth evaluating where transport behavior matters. The right outcome is evidence about fit and performance, not an unchecked protocol switch on a production gateway.


Sources




Stay radical, stay curious, and keep pushing the boundaries of what is possible in the cloud.


Chriz


Beyond Cloud with Chriz

 
 
 

Comments


bottom of page