Git Product home page Git Product logo

krakend-ce's Introduction

Krakend logo

KrakenD

FOSSA Status

KrakenD is an extensible, ultra-high performance API Gateway that helps you effortlessly adopt microservices and secure communications. KrakenD is easy to operate and run and scales out without a single point of failure.

KrakenD Community Edition (or KrakenD-CE) is the open-source distribution of KrakenD.

KrakenD Site | Documentation | Blog | Twitter | Downloads

Benefits

  • Easy integration of an ultra-high performance gateway.
  • Effortlessly transition to microservices and Backend For Frontend implementations.
  • True linear scalability: Thanks to its stateless design, every KrakenD node can operate independently in the cluster without any coordination or centralized persistence.
  • Low operational cost: +70K reqs/s on a single instance of regular size. Super low memory consumption with high traffic (usually under 50MB w/ +1000 concurrent). Fewer machines. Smaller machines. Lower budget.
  • Platform-agnostic. Whether you work in a Cloud-native environment (e.g., Kubernetes) or self-hosted on-premises.
  • No vendor lock-in: Reuse the best existing open-source and proprietary tools rather than having everything in the gateway (telemetry, identity providers, etc.)
  • API Lifecycle: Using GitOps and declarative configuration.
  • Decouple clients from existing services. Create new APIs without changing your existing API contracts.

Technical features

  • Content aggregation, composition, and filtering: Create views and mashups of aggregated content from your APIs.
  • Content Manipulation and format transformation: Change responses, convert transparently from XML to JSON, and vice-versa.
  • Security: Zero-trust policy, CORS, OAuth, JWT, HSTS, clickjacking protection, HPKP, MIME-Sniffing prevention, XSS protection...
  • Concurrent calls: Serve content faster than consuming backends directly.
  • SSL and HTTP2 ready
  • Throttling: Limits of usage in the router and proxy layers
  • Multi-layer rate-limiting for the end-user and between KrakenD and your services, including bursting, load balancing, and circuit breaker.
  • Telemetry and dashboards of all sorts: Datadog, Zipkin, Jaeger, Prometheus, Grafana...
  • Extensible with Go plugins, Lua scripts, Martian, or Google CEL spec.

See the website for more information.

Download

KrakenD is packaged and distributed in several formats. You don't need to clone this repo to use KrakenD unless you want to tweak and build the binary yourself.

Run

In its simplest form with Docker:

docker run -it -p "8080:8080" devopsfaith/krakend

Now see http://localhost:8080/__health. The gateway is listening. Now CTRL-C and replace /etc/krakend/krakend.json with your first configuration.

Build

See the required Go version in the Makefile, and then:

make build

Or, if you don't have or don't want to install go, you can build it using the golang docker container:

make build_on_docker

License

FOSSA Status

krakend-ce's People

Contributors

kpacha avatar taik0 avatar alombarte avatar dhontecillas avatar sergioa avatar deepsource-autofix[bot] avatar bgpearson avatar jaormx avatar rgomezcasas avatar dependabot[bot] avatar disc avatar obokaman-com avatar zorlin avatar deepsourcebot avatar dschanoeh avatar juandavi1 avatar ksylvan avatar fossabot avatar norasotanext avatar x1ah avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.