The Ultra Performant API Gateway
Abdullah Fathi
Bengkel DevOps
Raia Hotel & Convention Center, Kuching
30 September 2024
Introduction
In today’s digital landscape, managing microservices highlights the need for efficient API Gateways. They facilitate communication between client applications and backend services, enhancing performance, security, and microservice orchestration.
What is ?
-
Extensible, declarative, high performance open-source API Gateway
-
Written in Go
-
Stateless Architecture
-
Needs no programming as it offers a declarative way to create the endpoints
-
KrakenD core engine has joined The Linux Foundation on 2021 with a codename Lura Project
Effortlessly adopt microservices
1.
Move from dealing with every particular microservice to talking to a single entry point that handles the interaction with all your microservices
2.
Secure by Default
Authorization, protection against scrapping, security best practices and abuse prevention implementation out of the box
3.
Scale Out Without Single Points of Failure
Stateless design provides true linear scalability. KrakenD does not require node coordinator or data centralization
KrakenD is more than a typical proxy that forwards clients to backend services, but a powerful engine that can transform, aggregate or remove data from your own or third party services
Performance Benchmarks
~18,000 requests/second on an ordinary laptop
# | Hardware specs | Requests second | Average response |
---|---|---|---|
1. | Amazon EC2 (c4.2xlarge) | 10126.1613 reqs/s | 9.8ms |
2. | Amazon EC2 (c4.xlarge) | 8465.4012 reqs/s | 11.7ms |
3. | Amazon EC2 (m4.large) | 3634.1247 reqs/s | 27.3ms |
4. | Amazon EC2 (t2.medium) | 2781.8611 reqs/s | 351.3ms |
5. | Amazon EC2 (t2.micro) | 2757.6407 reqs/s | 35.8ms |
6. | MacBook Pro (Aug 2015) 2,2 GHz Intel Core i7 | 18157.4274 reqs/s | 5.5ms |
Performance Benchmarks
For each instance type there are 2 different tests:
-
Proxy: When the KrakenD is just used as a gateway and calls to a single endpoint to the web server
-
Aggregate: When the KrakenD calls to 3 different endpoints in the web server and aggregates the results
Instance Type | Number of vCPU | Memory |
---|---|---|
t2.micro | 1 | 1 GB |
t2.medium | 2 | 4 GB |
m4.large | 2 | 8 GB |
c4.xlarge | 4 | 7.5 GB |
c4.2xlarge | 8 | 15 GB |
Performance Benchmarks
KrakenD vs other products in the market. Requests per second in equal conditions
Performance
KrakenD supports more than 70K req/s on commodity software. They're the fastest and more performant solution in the market.
Low Operational Cost
Higher performance results in lower requirements in terms of resources, allowing you to save costs in your infrastructure
Stateless Design
The stateless design is a competitive advantage over other solutions. It provides a true linear scalability and no need of node coordination
True Linear Scalability
Every KrakenD node can operate independently without any coordination or centralized persistence of configuration needed
What makes KrakenD different from others?
Simple to Operate
and Run
Support from Creators
Rich Open-Source
Ecosystem
No Lock-In
Only need KrakenD binary and a JSON config file to get KrakenD up & running
Rather than "trained" or "sales engineers. you'll receive support and advice from the engineers that coded the software
Able to integrate with standard and proved open-source solutions for every specific task
Integrate with existing solutions in the technical stack, and easily replace them when needed. Compatible to both Community or Enterprise Edition
What makes KrakenD different from others?
What else?
- A Feature-Rich Gateway: Supports various protocols and APIs with access controls, data transformation, integrations, and caching.
- Customizable to Your Needs: Add features via plugin system, tailoring KrakenD to your requirements.
- Innovative Content Aggregation: A pioneer in the Backend For Frontend pattern, KrakenD aggregates multiple APIs in one call, handling different encodings.
- Uncompromised Security: Compliant with OWASP best practices, KrakenD offers top security without storing data, ensuring regulatory compliance.
- Transparent, Predictable Pricing: The pricing model includes unlimited requests and services, with a free open-source version and an Enterprise Edition for premium features and support.
What else?
- A Feature-Rich Gateway: Supports a variety of protocols and API specifications, offering fine-grained access controls, data transformation, multiple integrations, and caching.
- Customizability to Cater to Your Needs: Add custom features through our plugin system, extending KrakenD to fit your unique requirements.
- Innovative Content Aggregation: KrakenD is a pioneer in implementing the Backend For Frontend pattern. It aggregates responses from multiple APIs in a single call, translating different encodings seamlessly.
- Uncompromised Security: Aligned with OWASP best practices and a certified CNA, KrakenD offers top-notch security. Our software doesn't store any data, ensuring compliance with stringent data regulation policies.
- Transparent, Predictable Pricing: Our pricing model includes unlimited requests and APIs/services, ensuring transparency and predictability. Our open-source community version is free and unlimited, and our Enterprise Edition offers a premium feature layer with expert support
KrakenD Features
KrakenD vs Kong vs Tyk:
API Gateway features matrix
(Enterprise products)
Approach
Demo
Aggregation
Sequential Proxying
Authorization
Q & A
There are no secrets to success. It is the result of preparation, hard work, and learning from failure. - Colin Powell
THANK YOU
Intro KrakenD
By Abdullah Fathi
Intro KrakenD
- 148