Blue is a lightweight cloud-native gateway solution to handle millions of routing endpoints with a large number of connections.

Related tags

Microservices blue
Overview

Blue

the Blue is a gateway new time, high performance, high stable, high availability, easy to use.

Motivation

Blue is a lightweight cloud-native gateway solution to handle millions of routing endpoints with a large number of connections.

We start this challenge by designing a public API service at Ankr. At the early stage, we have investigated many open-source gateway solutions, such as Traefik, API Six, Nginx Ingress. However, none of the existing solutions can deal with this issue well because they all tend to cache all the routing resources in the k8s cluster, which, unfortunately, burdens or even crashes the overall system. Therefore, we decided to move forward with the Blue gateway.

The primary design goals of Blue are:

  1. Only keep recent active routing resources into cache and save the rest into persistent storage
  2. Support a large number of connections with acceptable k8s resources
  3. Implement with Golang for better compatibility with other cloud-native technologies

Arch

system arch

Features

  • support http/https proxy

  • support websocket proxy

  • support certificates update in time

  • support manage the router endpoints in line with API

  • friendly API

  • useful Web UI

  • kindly metrics

  • kinds of middlewares

    • basic auth
    • rate limit
    • white/black list
    • conn limit
    • support third party middleware local or remote
    • add prefix
    • strip prefix
    • strip prefix regex
    • buffering
    • circuit breaker
    • custom content type
    • forward auth
    • headers
    • in flight request
    • redirect regex
    • replace path
    • retry

Acknowledgments

  • thanks Ankr sponors
  • thanks openresty for providing low level net platform
Releases(dawn-v0.0.1)
Ruuvi-go-gateway - Software replica of the Ruuvi Gateway

ruuvi-go-gateway ruuvi-go-gateway is a software that tries to replicate Ruuvi Ga

Scrin 6 May 10, 2022
Rpcx-framework - An RPC microservices framework based on rpcx, simple and easy to use, ultra fast and efficient, powerful, service discovery, service governance, service layering, version control, routing label registration.

RPCX Framework An RPC microservices framework based on rpcx. Features: simple and easy to use, ultra fast and efficient, powerful, service discovery,

ZYallers 1 Jan 5, 2022
Flamingops - Handle your web services consommation with golang

How to use this repo as a template for your project I - Introduction This reposi

Alexandre Delaloy 2 Mar 31, 2022
Micro is a platform for cloud native development

Micro Overview Micro addresses the key requirements for building services in the cloud. It leverages the microservices architecture pattern and provid

Micro 11.2k Jun 26, 2022
Cloud-native and easy-to-use application management platform | 云原生且易用的应用管理平台

Website • Documentation What is NEW! August 24, 2020 ,Rainbond 5.2 Stable version is officially released View Release Rainbond Introduction Cloud nati

好雨科技 3.1k Jun 25, 2022
Sample cloud-native application with 10 microservices showcasing Kubernetes, Istio, gRPC and OpenCensus.

Online Boutique is a cloud-native microservices demo application. Online Boutique consists of a 10-tier microservices application. The application is

Google Cloud Platform 12.4k Jun 23, 2022
Trying to build an Ecommerce Microservice in Golang and Will try to make it Cloud Native - Learning Example extending the project of Nic Jackson

Golang Server Project Best Practices Dependency Injection :- In simple words, we want our functions and packages to receive the objects they depend on

Ujjwal Sharma 17 Jun 13, 2022
Box is an incrementally adoptable tool for building scalable, cloud native, microservices.

Box is a tool for building scalable microservices from predefined templates. Box is currently in Beta so if you find any issues or have some ideas

null 1 Feb 3, 2022
Online Boutique: a cloud-native microservices demo application

This is an application forked from the GCP Microservice demo. Online Boutique is

null 0 Jan 5, 2022
CudeX: a cloud native intelligent operation and maintenance engine that provides service measurement, index quantification

简介 CudgX是星汉未来推出的面向云原生时代的AIOps智能运维引擎,它通过各类服务的多维度、大数据量的数据收集及机器学习训练分析,对各种服务进行指标化、数字

Galaxy-Future 63 Jun 16, 2022
Microservice responsible for the monitoring of active connections in RapidPro channels.

c-conn-watcher An application for watch active channel connections from specifc channels in Rapidpro and give metrics from this to serve for Prometheu

Weni 0 Feb 11, 2022
HTTP API Gateway

Manba/简体中文 Manba is a restful API gateway based on HTTP, which can be used as a unified API access layer. Tutorial A very detailed tutorial for beginn

null 3.1k Jun 23, 2022
This is a shopping basket workshop that shows how to use KrakenD API Gateway.

Go Restful Microservices and KrakenD API Gateway Workshop This is a shopping basket workshop that shows how to use KrakenD API Gateway. Consist of 5 m

Suat KÖSE 46 Jun 13, 2022
A microservice gateway developed based on golang.With a variety of plug-ins which can be expanded by itself, plug and play. what's more,it can quickly help enterprises manage API services and improve the stability and security of API services.

Goku API gateway is a microservice gateway developed based on golang. It can achieve the purposes of high-performance HTTP API forwarding, multi tenant management, API access control, etc. it has a powerful custom plug-in system, which can be expanded by itself, and can quickly help enterprises manage API services and improve the stability and security of API services.

Eolink 194 Jun 22, 2022
TiDB Gateway

TiDB Gateway Building go build Running ./tidbgw Optionally set the address of PD and address to listen on via flags. Using Connect your MySQL client

Daniël van Eeden 3 Jan 27, 2022
Test your API gateway routed lambdas locally and in CI

Lambo Test API Gateway wrapped lambda functions locally. Lambo can also be used to test API GW lambdas in CI without needing docker-in-docker. It will

Liam Galvin 8 Jun 22, 2022
a simple api gateway

鉴权网关 根据登录接口返回UIN判断是否登录/退出成功 自动添加跨域处理 会话重启即失效 TLS鉴权 负载均衡 随机 Config # 开启验证 enable_verify: false # 验证证书 ca_path: "./conf/ca.pem" module_cert_pem: "./conf

null 2 Feb 10, 2022
A gateway to expose s3 standard API for any storage type.

s3-gateway this project is used to be compatible with any other storage type. there are tons of object storage services in the internat. However, many

xylon 0 Nov 28, 2021
Micro-serviço em Golang para processar pagamentos de um Gateway.

Go Payment Processor Projeto Este repositório contém um micro-serviço em Golang que faz parte de um conjunto de serviços necessário para o projeto do

Daniel Hessel 0 Dec 13, 2021