<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Алексей Выродов</title>
    <description>The latest articles on DEV Community by Алексей Выродов (@__69dd58726).</description>
    <link>https://dev.to/__69dd58726</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2645364%2Ffc7d54c6-5b4e-44e8-9a6c-6732999319a0.jpg</url>
      <title>DEV Community: Алексей Выродов</title>
      <link>https://dev.to/__69dd58726</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/__69dd58726"/>
    <language>en</language>
    <item>
      <title>Cloud-Native API Gateway Comparison - (April 2026)</title>
      <dc:creator>Алексей Выродов</dc:creator>
      <pubDate>Thu, 02 Apr 2026 10:51:56 +0000</pubDate>
      <link>https://dev.to/__69dd58726/cloud-native-api-gateway-comparison-april-2026-5bcd</link>
      <guid>https://dev.to/__69dd58726/cloud-native-api-gateway-comparison-april-2026-5bcd</guid>
      <description>&lt;h2&gt;
  
  
  Latest Versions
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk&lt;/th&gt;
&lt;th&gt;Kong&lt;/th&gt;
&lt;th&gt;Istio Ingress&lt;/th&gt;
&lt;th&gt;KrakenD&lt;/th&gt;
&lt;th&gt;Apache APISIX&lt;/th&gt;
&lt;th&gt;Envoy Gateway&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Version&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;v0.9.9&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;5.11.0&lt;/td&gt;
&lt;td&gt;3.13 Ent / 3.9.1 OSS&lt;/td&gt;
&lt;td&gt;1.29.1&lt;/td&gt;
&lt;td&gt;2.13.3 CE / 2.12.5 EE&lt;/td&gt;
&lt;td&gt;3.15.0&lt;/td&gt;
&lt;td&gt;1.7.1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Released&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Apr 2026&lt;/td&gt;
&lt;td&gt;Dec 2025&lt;/td&gt;
&lt;td&gt;Dec 2025&lt;/td&gt;
&lt;td&gt;Mar 2026&lt;/td&gt;
&lt;td&gt;Mar 2026&lt;/td&gt;
&lt;td&gt;Feb 2026&lt;/td&gt;
&lt;td&gt;Mar 2026&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Language&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Go 1.26.1 (gin-gonic)&lt;/td&gt;
&lt;td&gt;Go&lt;/td&gt;
&lt;td&gt;Lua/OpenResty (NGINX)&lt;/td&gt;
&lt;td&gt;Go + C++ (Envoy)&lt;/td&gt;
&lt;td&gt;Go (Lura framework)&lt;/td&gt;
&lt;td&gt;Lua/OpenResty (NGINX)&lt;/td&gt;
&lt;td&gt;Go + C++ (Envoy)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;License&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Apache 2.0&lt;/td&gt;
&lt;td&gt;MPL v2.0 + Proprietary&lt;/td&gt;
&lt;td&gt;Apache 2.0 + Proprietary&lt;/td&gt;
&lt;td&gt;Apache 2.0&lt;/td&gt;
&lt;td&gt;Apache 2.0 + Proprietary&lt;/td&gt;
&lt;td&gt;Apache 2.0&lt;/td&gt;
&lt;td&gt;Apache 2.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Dependencies&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;None (Redis optional for distributed rate limits/cache)&lt;/td&gt;
&lt;td&gt;Redis&lt;/td&gt;
&lt;td&gt;PostgreSQL or DB-less&lt;/td&gt;
&lt;td&gt;Kubernetes (istiod)&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;etcd&lt;/td&gt;
&lt;td&gt;Kubernetes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Config Model&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;CRDs (operator mode, preferred)&lt;/strong&gt; / Declarative YAML&lt;/td&gt;
&lt;td&gt;REST API / Dashboard / CRDs&lt;/td&gt;
&lt;td&gt;REST API / YAML / CRDs&lt;/td&gt;
&lt;td&gt;Istio CRDs + K8s Gateway API&lt;/td&gt;
&lt;td&gt;Declarative JSON/YAML&lt;/td&gt;
&lt;td&gt;REST Admin API / YAML / CRDs&lt;/td&gt;
&lt;td&gt;K8s Gateway API (native)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Protocol Support
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;HTTP/HTTPS&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gRPC native&lt;/td&gt;
&lt;td&gt;✅ Dedicated port, reflection, health, streaming&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ (EE)&lt;/td&gt;
&lt;td&gt;✅ + HTTP↔gRPC transcoding&lt;/td&gt;
&lt;td&gt;✅ GRPCRoute&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;WebSocket&lt;/td&gt;
&lt;td&gt;✅ Full proxy + msg routing&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ (EE)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GraphQL&lt;/td&gt;
&lt;td&gt;✅ (proxy)&lt;/td&gt;
&lt;td&gt;✅ UDG&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ REST↔GraphQL&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TCP/UDP&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ TCP&lt;/td&gt;
&lt;td&gt;✅ TCP/TLS&lt;/td&gt;
&lt;td&gt;✅ TCP&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ TCP/UDP + MQTT + Dubbo&lt;/td&gt;
&lt;td&gt;✅ TCPRoute/UDPRoute&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SOAP&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SSE / Streaming&lt;/td&gt;
&lt;td&gt;✅ HTTP Flusher&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Routing &amp;amp; Traffic Management
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Path matching (exact/prefix/regex)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ radixtree&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Header/query matching&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Weighted routing / canary&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ HTTPRoute weights&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Load balancing&lt;/td&gt;
&lt;td&gt;RR, weighted, least-conn, &lt;strong&gt;capacity-aware&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;RR, weighted&lt;/td&gt;
&lt;td&gt;RR, weighted, least-conn, hash&lt;/td&gt;
&lt;td&gt;RR, random, least-conn, &lt;strong&gt;LEAST_REQUEST gRPC&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;RR&lt;/td&gt;
&lt;td&gt;RR, weighted, least-conn, consistent-hash, ewma&lt;/td&gt;
&lt;td&gt;RR, random, least-conn, consistent-hash&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Circuit breaker&lt;/td&gt;
&lt;td&gt;✅ Global + backend&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Plugin&lt;/td&gt;
&lt;td&gt;✅ DestinationRule&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ BackendTrafficPolicy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Rate limiting&lt;/td&gt;
&lt;td&gt;✅ Token bucket (global/route/backend)&lt;/td&gt;
&lt;td&gt;✅ Multiple strategies&lt;/td&gt;
&lt;td&gt;✅ Plugin&lt;/td&gt;
&lt;td&gt;✅ EnvoyFilter&lt;/td&gt;
&lt;td&gt;✅ Multi-layer + bursting&lt;/td&gt;
&lt;td&gt;✅ limit-count/conn/req + &lt;strong&gt;Redis keepalive&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ BackendTrafficPolicy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Retry policies&lt;/td&gt;
&lt;td&gt;✅ Exp. backoff&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Traffic mirroring&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fault injection&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Max concurrent sessions&lt;/td&gt;
&lt;td&gt;✅ With queueing&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ (max rate)&lt;/td&gt;
&lt;td&gt;✅ limit-conn&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Health checking&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌ (stateless)&lt;/td&gt;
&lt;td&gt;✅ Active + passive&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Service discovery&lt;/td&gt;
&lt;td&gt;✅ K8s native&lt;/td&gt;
&lt;td&gt;✅ K8s native&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ K8s native&lt;/td&gt;
&lt;td&gt;✅ DNS SRV&lt;/td&gt;
&lt;td&gt;✅ DNS/Consul/Nacos/Eureka/K8s&lt;/td&gt;
&lt;td&gt;✅ K8s native&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Security &amp;amp; Authentication
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;TLS 1.2/1.3&lt;/td&gt;
&lt;td&gt;✅ SIMPLE/MUTUAL/OPT_MUTUAL&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;mTLS&lt;/td&gt;
&lt;td&gt;✅ Identity extraction&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Mesh-wide auto&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ (EE)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ BackendTLSPolicy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;JWT auth&lt;/td&gt;
&lt;td&gt;✅ RS256/ES256/HS256+, JWK&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Multi-IdP, custom claims&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ Plugin&lt;/td&gt;
&lt;td&gt;✅ RequestAuthentication&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ SecurityPolicy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;API key auth&lt;/td&gt;
&lt;td&gt;✅ Hashing, header/query&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ (EE)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OIDC&lt;/td&gt;
&lt;td&gt;✅ Keycloak/Auth0/Okta/Azure&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Limited&lt;/td&gt;
&lt;td&gt;✅ (EE)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ OIDC SecurityPolicy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RBAC / ABAC&lt;/td&gt;
&lt;td&gt;✅ JWT claims + CEL&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ (Ent)&lt;/td&gt;
&lt;td&gt;✅ AuthorizationPolicy + &lt;strong&gt;dry-run&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ CEL (EE)&lt;/td&gt;
&lt;td&gt;✅ consumer-restriction&lt;/td&gt;
&lt;td&gt;✅ AuthorizationPolicy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OPA integration&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Plugin&lt;/td&gt;
&lt;td&gt;✅ Plugin&lt;/td&gt;
&lt;td&gt;✅ ext_authz&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ opa plugin&lt;/td&gt;
&lt;td&gt;✅ ext_authz&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HashiCorp Vault&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Deep&lt;/strong&gt;: K8s/AppRole/Token/AWS/GCP; PKI; secret injection&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ Secrets + &lt;strong&gt;OAuth2 Vault&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ Vault secrets (jwt-auth)&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cert auto-renewal&lt;/td&gt;
&lt;td&gt;✅ Vault PKI + hot-reload&lt;/td&gt;
&lt;td&gt;❌ External&lt;/td&gt;
&lt;td&gt;✅ cert-manager&lt;/td&gt;
&lt;td&gt;✅ Istio CA&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ ssl + auto-renewal&lt;/td&gt;
&lt;td&gt;✅ cert-manager&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SNI multi-tenant&lt;/td&gt;
&lt;td&gt;✅ Per-route Vault PKI&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Security headers (HSTS, CSP)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CORS&lt;/td&gt;
&lt;td&gt;✅ Global + route&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ (via VirtualService)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;FIPS compliance&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;FIPS builds&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ FIPS 140-2&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Data Transformation
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Header manipulation&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;URL rewriting&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Body transforms (req/resp)&lt;/td&gt;
&lt;td&gt;✅ Templates + field ops&lt;/td&gt;
&lt;td&gt;✅ Body + SOAP↔GraphQL&lt;/td&gt;
&lt;td&gt;✅ Plugin + Datakit&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ Go templates + Martian&lt;/td&gt;
&lt;td&gt;✅ serverless-pre/post-function&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Response field filtering&lt;/td&gt;
&lt;td&gt;✅ Allow/deny lists&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Deny/allow lists (BFF)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ response-rewrite&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Response aggregation (multi-backend)&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Deep/shallow/replace&lt;/strong&gt; merge&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Native BFF merging&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Field mapping/renaming&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ Field mapping&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Field grouping/flattening&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Array operations&lt;/td&gt;
&lt;td&gt;✅ Sort, filter, deduplicate&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gRPC FieldMask&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Content negotiation&lt;/td&gt;
&lt;td&gt;✅ JSON/XML/YAML&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ Auto-encoding&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Direct responses&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Caching
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;In-memory cache&lt;/td&gt;
&lt;td&gt;✅ TTL + max entries&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Plugin&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ LRU cache&lt;/td&gt;
&lt;td&gt;✅ proxy-cache&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Distributed cache (Redis)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ + &lt;strong&gt;Cloud Redis&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Stale-while-revalidate&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Negative caching&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Observability
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Prometheus metrics&lt;/td&gt;
&lt;td&gt;✅ Route-based&lt;/td&gt;
&lt;td&gt;✅ Tyk Pump&lt;/td&gt;
&lt;td&gt;✅ + OTel native&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Compressed endpoint&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OpenTelemetry&lt;/td&gt;
&lt;td&gt;✅ Tracing&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Trace IDs in logs&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Metrics+Logs+Traces&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ Deep, native&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Structured logging&lt;/td&gt;
&lt;td&gt;✅ JSON + console&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ + &lt;strong&gt;request_id in logs&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Health/ready/live probes&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Analytics dashboard&lt;/td&gt;
&lt;td&gt;✅ Grafana&lt;/td&gt;
&lt;td&gt;✅ Dashboard&lt;/td&gt;
&lt;td&gt;✅ Konnect&lt;/td&gt;
&lt;td&gt;✅ Kiali, Grafana&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ APISIX Dashboard&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Access logs&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Deployment &amp;amp; Operations
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Docker&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ + FIPS&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Official image&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kubernetes / Helm&lt;/td&gt;
&lt;td&gt;✅ Helm chart + &lt;strong&gt;Operator with CRDs&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ Tyk Operator&lt;/td&gt;
&lt;td&gt;✅ KIC&lt;/td&gt;
&lt;td&gt;✅ Native&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Ingress Controller 2.0&lt;/td&gt;
&lt;td&gt;✅ Native&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DB-less / stateless&lt;/td&gt;
&lt;td&gt;✅ (Redis optional for distributed)&lt;/td&gt;
&lt;td&gt;❌ (Redis)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Fully stateless&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ Standalone YAML&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hot config reload&lt;/td&gt;
&lt;td&gt;✅ Atomic&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ (dev image)&lt;/td&gt;
&lt;td&gt;✅ Hot plugins&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hybrid CP/DP&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Multi-cluster&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SaaS / Managed&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ Tyk Cloud&lt;/td&gt;
&lt;td&gt;✅ Konnect&lt;/td&gt;
&lt;td&gt;✅ GKE/AKS&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌ (API7 Cloud)&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Plugin system&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ Go/Python/JS/gRPC&lt;/td&gt;
&lt;td&gt;✅ Lua/Go/JS/WASM&lt;/td&gt;
&lt;td&gt;✅ EnvoyFilter/WASM&lt;/td&gt;
&lt;td&gt;✅ Go plugins&lt;/td&gt;
&lt;td&gt;✅ Lua/Go/Java/Python/WASM&lt;/td&gt;
&lt;td&gt;✅ EnvoyExtension/WASM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;K8s Ingress Controller&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;Operator with CRDs&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;✅ Tyk Operator (Ingress)&lt;/td&gt;
&lt;td&gt;✅ Kong Ingress Controller&lt;/td&gt;
&lt;td&gt;✅ Istio Ingress Gateway&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅ APISIX Ingress Controller 2.0&lt;/td&gt;
&lt;td&gt;✅ (via Gateway API)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Developer portal&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Multi-platform&lt;/td&gt;
&lt;td&gt;✅ Linux/macOS&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅ Linux&lt;/td&gt;
&lt;td&gt;✅ Linux/macOS/Docker&lt;/td&gt;
&lt;td&gt;✅ Linux/macOS/ARM64&lt;/td&gt;
&lt;td&gt;✅ Linux&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Performance Profile
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk&lt;/th&gt;
&lt;th&gt;Kong&lt;/th&gt;
&lt;th&gt;Istio&lt;/th&gt;
&lt;th&gt;KrakenD&lt;/th&gt;
&lt;th&gt;APISIX&lt;/th&gt;
&lt;th&gt;Envoy GW&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Reported throughput&lt;/td&gt;
&lt;td&gt;N/A&lt;/td&gt;
&lt;td&gt;Thousands rps/CPU&lt;/td&gt;
&lt;td&gt;Millions rps (NGINX)&lt;/td&gt;
&lt;td&gt;High (Envoy)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;70K+ rps/instance&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;18K+ QPS single core&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;High (Envoy)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Memory footprint&lt;/td&gt;
&lt;td&gt;Low (Go binary)&lt;/td&gt;
&lt;td&gt;Moderate (+ Redis)&lt;/td&gt;
&lt;td&gt;Moderate (NGINX)&lt;/td&gt;
&lt;td&gt;Moderate (Envoy)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;&amp;lt;100MB at high traffic&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Low (NGINX)&lt;/td&gt;
&lt;td&gt;Moderate (Envoy)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Architecture&lt;/td&gt;
&lt;td&gt;Single binary + optional Redis&lt;/td&gt;
&lt;td&gt;Gateway + Redis&lt;/td&gt;
&lt;td&gt;NGINX + optional DB&lt;/td&gt;
&lt;td&gt;Envoy + istiod&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Single binary, zero deps&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;NGINX + etcd&lt;/td&gt;
&lt;td&gt;Envoy + controller&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Cost Model
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Solution&lt;/th&gt;
&lt;th&gt;Free / OSS&lt;/th&gt;
&lt;th&gt;Commercial&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;AV API GW&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Fully free (Apache 2.0)&lt;/td&gt;
&lt;td&gt;N/A&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tyk&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Gateway OSS (MPL v2.0)&lt;/td&gt;
&lt;td&gt;Dashboard/Portal/Operator require license&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Kong&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;OSS 3.9.1 (Apache 2.0)&lt;/td&gt;
&lt;td&gt;Konnect ~$105/svc/mo + ~$34.25/1M req&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Istio&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Fully free (Apache 2.0)&lt;/td&gt;
&lt;td&gt;Cloud provider managed add-ons&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;KrakenD&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;CE fully free (Apache 2.0)&lt;/td&gt;
&lt;td&gt;EE flat-rate (unlimited requests/APIs)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;APISIX&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Fully free (Apache 2.0)&lt;/td&gt;
&lt;td&gt;API7 Cloud (commercial support)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Envoy Gateway&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Fully free (Apache 2.0)&lt;/td&gt;
&lt;td&gt;Solo.io Gloo (commercial)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Key Differentiators
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AV API Gateway
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Deepest HashiCorp Vault integration&lt;/strong&gt; of any gateway (multi-auth, PKI lifecycle, secret injection, SNI certs)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Richest data transformation&lt;/strong&gt;: response merging, field grouping/flattening, array ops, gRPC FieldMask — unique capabilities&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Advanced caching&lt;/strong&gt;: stale-while-revalidate, negative caching&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kubernetes Operator with CRDs&lt;/strong&gt; as the preferred config model, plus standalone YAML mode&lt;/li&gt;
&lt;li&gt;Minimal dependencies — single binary, Redis optional (distributed rate limits / cache only)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gaps&lt;/em&gt;: No plugin system&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Tyk
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Full API lifecycle&lt;/strong&gt; platform with Dashboard, Portal, Analytics&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-IdP JWT&lt;/strong&gt; in single config (5.11) — Keycloak + Okta + Auth0 simultaneously&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FIPS builds&lt;/strong&gt; for regulated environments&lt;/li&gt;
&lt;li&gt;Universal Data Graph for GraphQL federation&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gaps&lt;/em&gt;: Requires Redis, no native Vault, limited transformation&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Kong
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Largest plugin ecosystem&lt;/strong&gt; (100+), biggest community&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PCI DSS 4.0&lt;/strong&gt; attestation (Konnect/Cloud Gateways)&lt;/li&gt;
&lt;li&gt;DataKit orchestration for complex API workflows&lt;/li&gt;
&lt;li&gt;Event Gateway (Kafka integration)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gaps&lt;/em&gt;: Many features Enterprise-only, pricing escalates at scale, limited BFF/aggregation&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Istio Ingress
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Automatic mesh-wide mTLS&lt;/strong&gt; — no other gateway provides this&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unified east-west + north-south&lt;/strong&gt; traffic management&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ambient mesh&lt;/strong&gt; maturing fast (DNS, nftables, multi-network beta)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gaps&lt;/em&gt;: K8s-only, no caching/transformation/portal, steep learning curve&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  KrakenD
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best BFF/aggregation pattern&lt;/strong&gt; alongside avapigw — native multi-backend merging, field filtering&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Highest per-instance throughput&lt;/strong&gt;: 70K+ rps, &amp;lt;100MB RAM&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Truly stateless&lt;/strong&gt; — zero coordination between nodes, linear scaling&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flat-rate pricing&lt;/strong&gt; (EE) — no per-request costs&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gaps&lt;/em&gt;: No K8s Ingress Controller, no health checking (by design), no weighted routing&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Apache APISIX
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Richest service discovery&lt;/strong&gt;: DNS, Consul, Nacos, Eureka, K8s&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Broadest L4 protocol support&lt;/strong&gt;: TCP, UDP, MQTT, Dubbo&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-language plugins&lt;/strong&gt;: Lua, Go, Java, Python, WASM&lt;/li&gt;
&lt;li&gt;Fully dynamic — hot plugin loading without restart&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gaps&lt;/em&gt;: Requires etcd, dashboard development stalled&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Envoy Gateway
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Reference Kubernetes ingress implementation&lt;/strong&gt; based on Envoy proxy&lt;/li&gt;
&lt;li&gt;Lightweight with extensibility via EnvoyPatchPolicy and WASM&lt;/li&gt;
&lt;li&gt;Ideal for teams migrating from Ingress-NGINX (ingress2gateway support)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gaps&lt;/em&gt;: Young project, no built-in caching/transformation/portal, K8s-only&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Summary Scorecard (1–5)
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dimension&lt;/th&gt;
&lt;th&gt;AV API GW&lt;/th&gt;
&lt;th&gt;Tyk 5.11&lt;/th&gt;
&lt;th&gt;Kong 3.13&lt;/th&gt;
&lt;th&gt;Istio 1.29&lt;/th&gt;
&lt;th&gt;KrakenD 2.13&lt;/th&gt;
&lt;th&gt;APISIX 3.15&lt;/th&gt;
&lt;th&gt;Envoy GW 1.7&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Feature breadth&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Data transformation&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★☆☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;BFF / aggregation&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Vault integration&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★☆☆☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★★☆☆☆&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gRPC depth&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Plugin ecosystem&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★☆☆☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;K8s Ingress / Operator&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★☆☆☆☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Performance / efficiency&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Operational maturity&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ease of setup&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★☆☆☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cost efficiency&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★☆☆&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;td&gt;★★★★★&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;p&gt;&lt;em&gt;Based on official documentation, release notes, and publicly available information as of April 2, 2026.&lt;/em&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>High Performance API Gateway: The Path to Building Your Own Gateway</title>
      <dc:creator>Алексей Выродов</dc:creator>
      <pubDate>Fri, 30 Jan 2026 11:00:24 +0000</pubDate>
      <link>https://dev.to/__69dd58726/high-performance-api-gateway-the-path-to-building-your-own-gateway-1hm7</link>
      <guid>https://dev.to/__69dd58726/high-performance-api-gateway-the-path-to-building-your-own-gateway-1hm7</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;In microservice architecture, an API Gateway solves the "endpoint sprawl" problem — instead of clients needing to know about dozens of internal services, they work with a single unified API. This simplifies client code, allows backend services to evolve independently, and enables centralized security policy management.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Ten years — enough time to journey from an enthusiastic newcomer to a weary pragmatist, and then, if you're lucky, return to something resembling conscious enthusiasm. That's exactly how long I've been living side by side with microservice architecture, and nearly all that time I've been haunted by the same question: why doesn't any API Gateway do everything the way I'd want it to?&lt;/p&gt;

&lt;p&gt;It all started with Ocelot — a .NET solution that seemed like a revelation at the time. A great constructor with declarative configuration and clear routing. But the moment you stepped outside typical scenarios, you had to dig into the code, write custom middleware, accept limitations, or find workarounds. Then came KrakenD — fast, written in Go, with an elegant idea of backend aggregation. Lura, its underlying framework, promised extensibility, but in practice every additional non-trivial task significantly increased response times, and even implementing gRPC Unary required a "hack." A separate pain I experienced for years was managing secrets and certificates. Passwords in config files. API keys in environment variables. Certificates that someone forgot to renew, causing services to crash at three in the morning. Credential rotation that required restarts.&lt;/p&gt;

&lt;p&gt;I modified, patched, wrapped in proxy layers, wrote plugins. Solved specific problems — and each time caught myself thinking: "If only this worked out of the box."&lt;/p&gt;

&lt;p&gt;Years passed, projects changed, technologies evolved — but the dream remained. To create my own open-source Cloud-native API Gateway. Not just "another proxy," but a tool designed with all the experience accumulated over those years. A tool where every feature is an answer to real pain, not a checkbox on a marketing checklist.&lt;/p&gt;

&lt;p&gt;And finally, the time came, along with the accumulated knowledge and technologies to make it happen. Thus, AV API Gateway was born.&lt;/p&gt;

&lt;h2&gt;
  
  
  What AV API Gateway Can Do
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Routing and Protocols&lt;/strong&gt;. Full HTTP support and native gRPC through a dedicated port with HTTP/2. Routing by exact, prefix, regex, and wildcard patterns. Matching by methods, headers, and query parameters. For gRPC — routing by service and method, metadata matching, support for all streaming types: unary, server streaming, client streaming, and bidirectional.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Authentication&lt;/strong&gt;. JWT supporting RS256, ES256, HS256, Ed25519 with automatic key renewal via JWKS URL. API Key with hashing and per-key rate limiting. mTLS with identity extraction from certificates. Full OIDC integration with Keycloak, Auth0, Okta, Azure AD — with discovery and token caching.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Authorization&lt;/strong&gt;. RBAC based on JWT claims with role hierarchy. ABAC with CEL expressions for complex policies. Integration with Open Policy Agent for external authorization. Decision caching with configurable TTL.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Traffic Management&lt;/strong&gt;. Load balancing with round-robin, weighted, and least connections algorithms. Backend health checking with configurable thresholds. Token bucket rate limiting at global, route, and backend levels. Max sessions with queues and timeouts. Circuit breaker with automatic recovery. Retry policies with exponential backoff. Traffic mirroring for testing. Fault injection for chaos engineering.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Transformation&lt;/strong&gt;. Response field filtering through allow/deny lists. Field mapping and renaming. Grouping into nested objects and flattening. Array operations: append, prepend, filter, sort, limit, deduplicate. Go templates for custom formatting. Merge responses from multiple backends. For gRPC — FieldMask filtering, metadata transformation, rate limiting on streaming messages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Caching&lt;/strong&gt;. In-memory cache with TTL and entry limits. Redis for distributed caching. Stale-while-revalidate. Negative caching for errors. Flexible cache key generation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Observability&lt;/strong&gt;. Prometheus metrics covering all aspects: requests, latency, sizes, circuit breaker states, rate limit hits, authentication, and authorization. OpenTelemetry tracing with configurable sampling. Structured logging in JSON or console format.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;HashiCorp Vault&lt;/strong&gt;. Secret storage and automatic certificate issuance and renewal.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Config&lt;/strong&gt;. Hot configuration reload without restart. Graceful shutdown with connection draining. Docker images. Helm chart for Kubernetes with HPA, PDB, and Ingress support. Multi-platform builds.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AV API Gateway&lt;/strong&gt; is not just a technical project. It's the crystallization of ten years of experience, dozens of solved problems and workarounds that are no longer needed. It's the tool I wish I had when I first started working with microservices. And now it exists — open and extensible.&lt;/p&gt;

&lt;p&gt;Join in using it, write about problems and suggestions in issues!!!&lt;/p&gt;

&lt;p&gt;Source code available on GitHub: github.com/vyrodovalexey/avapigw&lt;/p&gt;

</description>
      <category>api</category>
      <category>architecture</category>
      <category>microservices</category>
      <category>performance</category>
    </item>
  </channel>
</rss>
