Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsMay 21, 2026·3 min de lectura

Lura (KrakenD) — Ultra-Performance API Gateway Framework in Go

Lura is the open-source framework powering the KrakenD API Gateway. Written in Go, it assembles high-performance API gateways with middleware pipelines, response aggregation, and protocol translation — processing thousands of requests per second on minimal hardware.

Listo para agents

Este activo puede ser leído e instalado directamente por agents

TokRepo expone un comando CLI universal, contrato de instalación, metadata JSON, plan según adaptador y contenido raw para que los agents evalúen compatibilidad, riesgo y próximos pasos.

Needs Confirmation · 64/100Política: confirmar
Superficie agent
Cualquier agent MCP/CLI
Tipo
Skill
Instalación
Single
Confianza
Confianza: Established
Entrada
Lura Overview
Comando CLI universal
npx tokrepo install 3cb2ed6b-54af-11f1-9bc6-00163e2b0d79

Introduction

Lura is an open-source Go framework for building API gateways, created by the team behind KrakenD. It provides the core routing, middleware, and aggregation engine that transforms a declarative JSON configuration into a high-throughput gateway, removing the need to write custom proxy code for common API composition patterns.

What Lura Does

  • Routes incoming requests to one or more backend services based on declarative configuration
  • Aggregates multiple backend responses into a single unified response
  • Applies middleware pipelines for rate limiting, authentication, and transformation
  • Handles protocol translation between REST, gRPC, and GraphQL endpoints
  • Processes requests with zero-allocation techniques for minimal garbage collection pressure

Architecture Overview

Lura implements a pipeline architecture where each endpoint definition becomes a handler chain. The router dispatches incoming requests, the proxy layer fans out to backends concurrently, and the response merger combines results. Middleware hooks at each stage allow injecting cross-cutting concerns. The framework is stateless by design, relying on external stores only when features like distributed rate limiting require coordination.

Self-Hosting & Configuration

  • Deploy as a Docker container or standalone binary on Linux, macOS, or Windows
  • Define all routing and behavior in a single JSON or YAML configuration file
  • Use the KrakenDesigner web tool to visually build gateway configurations
  • Scale horizontally behind a load balancer with no shared state between instances
  • Monitor performance via built-in OpenTelemetry, Prometheus, and logging integrations

Key Features

  • Declarative configuration with no custom code required for standard use cases
  • Concurrent backend requests with configurable timeouts and circuit breakers
  • Response manipulation including field filtering, grouping, and renaming
  • Plugin system for extending functionality in Go without forking the framework
  • Sub-millisecond latency overhead per proxied request under normal load

Comparison with Similar Tools

  • Kong — Lua-based with a database for configuration; Lura is stateless and config-file driven
  • APISIX — similar declarative approach but Nginx/Lua based; Lura is pure Go with lower resource usage
  • Envoy — C++ service proxy focused on mesh scenarios; Lura targets API composition and aggregation
  • Tyk — Go-based gateway with dashboard; Lura is a framework for building custom gateways without vendor lock-in

FAQ

Q: What is the difference between Lura and KrakenD? A: Lura is the open-source framework (the engine). KrakenD is a complete API gateway product built on Lura with additional enterprise features and support.

Q: Can Lura handle WebSocket connections? A: WebSocket passthrough is supported for direct proxy scenarios. Full WebSocket manipulation requires custom middleware.

Q: How does performance compare to Nginx-based gateways? A: Lura processes requests with lower memory usage and comparable throughput to Nginx for API gateway workloads, with the advantage of native response aggregation.

Q: Do I need a database? A: No, Lura is completely stateless and reads all configuration from files. No database is required for operation.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados