KrakenD is a high-performance, open-source API Gateway designed to simplify the adoption and management of microservices. It acts as a stateless, distributed gateway that can connect, secure, aggregate, transform, and filter data from various backend services. Its architecture prioritizes speed, enabling it to handle thousands of requests per second with consistent performance, even under heavy loads.
The product is ideal for organizations and developers building and managing complex microservice architectures who need a robust, scalable, and efficient way to expose their APIs. It helps solve common microservice concerns like API aggregation, traffic management, and authentication, allowing development teams to focus on core business logic. KrakenD emphasizes a GitOps approach, where the gateway's configuration is managed through a single binary and version control, reducing infrastructure complexity and costs. It also offers transparent pricing with unlimited requests and APIs across all plans.
KrakenD is built for performance-critical environments, evidenced by its ability to achieve over 80,000 requests/second on commodity hardware. It integrates with various services beyond just REST APIs, including message queues (RabbitMQ, Kafka), GraphQL, gRPC, and serverless functions (Lambda). The platform also provides extensive features for data manipulation, monitoring through OpenTelemetry, and automatic documentation generation via OpenAPI.
How does KrakenD achieve its high performance and scalability?
KrakenD is built with a stateless, distributed architecture and a performance-first approach for every internal component. This design allows it to handle thousands of requests per second and achieve true linear scalability, even on commodity hardware.
What types of authentication methods does KrakenD support for securing APIs?
KrakenD supports a comprehensive range of authentication methods for both end-user validation and gateway-to-service validation. These include JWT, Client credentials, OAuth2, OpenID, API-Keys, Basic Auth, and mTLS.
Can KrakenD integrate with various backend services beyond traditional REST APIs?
Yes, KrakenD offers extensive connectivity options, allowing it to integrate with a wide array of services. This includes messaging queues like RabbitMQ, SNS, SQS, and Kafka, as well as GraphQL, gRPC, SOAP, and serverless functions like Lambda.
How does KrakenD facilitate API documentation and management?
KrakenD includes an OpenAPI exporter that automatically generates rich documentation websites. It also allows users to create their API gateway directly from existing OpenAPI specifications, streamlining the documentation and development process.
What capabilities does KrakenD offer for traffic management and control?
KrakenD provides robust traffic management features to control API access and behavior. These include rate limiting, concurrent call management, shadow proxying, bot detection, circuit breakers, and IP filtering.
How does KrakenD support a GitOps approach for managing API gateways?
KrakenD is designed to be managed in a GitOps way, requiring only a single binary and its configuration. This allows users to store the API gateway configuration in a version control system and delegate specific parts to different teams, aligning with modern infrastructure management practices.