All Projects → apache → dubbo-go-pixiu

apache / dubbo-go-pixiu

Licence: Apache-2.0 license
Based on the proxy gateway service of dubbo-go, it solves the problem that the external protocol calls the internal Dubbo cluster. At present, it supports HTTP and gRPC[developing].

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects
Makefile
30231 projects
Smarty
1635 projects
python
139335 projects - #7 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to dubbo-go-pixiu

Dubbo Go Pixiu
Based on the proxy gateway service of dubbo-go, it solves the problem that the external protocol calls the internal Dubbo cluster. At present, it supports HTTP and gRPC[developing].
Stars: ✭ 124 (-67.79%)
Mutual labels:  api-gateway, gateway, api-rest, cloud-native, protocols, cloudnative, dubbo
Spring Cloud Alibaba
Spring Cloud Alibaba provides a one-stop solution for application development for the distributed solutions of Alibaba middleware.
Stars: ✭ 20,934 (+5337.4%)
Mutual labels:  cloud-native, dubbo, rocketmq
Xc Spring Cloud Alibaba
spring cloud alibaba(2.2.1最新版)+nacos+dubbo+gateWay+sentinel+rocketmq+(pgsql/mysql8.0的json支持)+ignite集成可用于docker分布式框架+分布式自动化任务+mybatis多数据源+seate+ shardingSphere分布式分库事务解决方案
Stars: ✭ 131 (-65.97%)
Mutual labels:  gateway, dubbo, rocketmq
Product Microgateway
A cloud native, developer centric and decentralized API gateway for microservices
Stars: ✭ 194 (-49.61%)
Mutual labels:  api-gateway, gateway, cloud-native
Apioak
Full Lifecycle Management API Gateway.
Stars: ✭ 335 (-12.99%)
Mutual labels:  api-gateway, gateway, cloud-native
Tenso
Tenso is an HTTP REST API framework
Stars: ✭ 167 (-56.62%)
Mutual labels:  api-gateway, gateway
Graphql2rest
GraphQL to REST converter: automatically generate a RESTful API from your existing GraphQL API
Stars: ✭ 181 (-52.99%)
Mutual labels:  api-gateway, api-rest
rocketmq-site
Apache RocketMQ is a cloud native messaging and streaming platform, making it simple to build event-driven applications.
Stars: ✭ 41 (-89.35%)
Mutual labels:  cloud-native, rocketmq
Krakend Ce
KrakenD Community Edition. Make your binary of KrakenD API Gateway
Stars: ✭ 245 (-36.36%)
Mutual labels:  api-gateway, cloud-native
Rexlin600.github.io
系列博客、涵盖领域广、不定时更新、欢迎加入
Stars: ✭ 102 (-73.51%)
Mutual labels:  api-gateway, dubbo
Apilogs
Easy logging and debugging for Amazon API Gateway and AWS Lambda Serverless APIs
Stars: ✭ 216 (-43.9%)
Mutual labels:  api-gateway, gateway
gateway
A high-performance API Gateway with middlewares, supporting HTTP and gRPC protocols.
Stars: ✭ 520 (+35.06%)
Mutual labels:  api-gateway, gateway
Tree Gateway
This is a full featured and free API Gateway
Stars: ✭ 160 (-58.44%)
Mutual labels:  api-gateway, gateway
dubbo-go-benchmark
benchmark for [apache/dubbo-go](github.com/apache/dubbo-go)
Stars: ✭ 26 (-93.25%)
Mutual labels:  dubbogo, dubbo-go
Apisix Docker
the docker for Apache APISIX
Stars: ✭ 119 (-69.09%)
Mutual labels:  api-gateway, cloud-native
Goku Api Gateway
A Powerful HTTP API Gateway in pure golang!Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang开发的微服务网关,能够实现高性能 HTTP API 转发、服务编排、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面,能够快速帮助企业进行 API 服务治理、提高 API 服务的稳定性和安全性。
Stars: ✭ 2,773 (+620.26%)
Mutual labels:  api-gateway, gateway
api-gateway
Node.js API gateway that works as single entry point for all clients in a MicroService architecture pattern.
Stars: ✭ 26 (-93.25%)
Mutual labels:  api-gateway, gateway
GatewayService
GatewayService (Ocelot).
Stars: ✭ 19 (-95.06%)
Mutual labels:  api-gateway, gateway
Helmet
🐺 A Lightweight Cloud Native API Gateway.
Stars: ✭ 124 (-67.79%)
Mutual labels:  api-gateway, cloud-native
Ngr
A high-performance & enterprise-class edge gateway middleware
Stars: ✭ 89 (-76.88%)
Mutual labels:  api-gateway, gateway

Pixiu Logo

Language Build Status

English | 中文

Introduction

Dubbo-Go-Pixiu(official site: https://dubbo.apache.org/zh/docs3-v2/dubbo-go-pixiu/) is a high-performance API gateway and multi-language solution Sidecar in the Dubbo ecosystem

It is an open source Dubbo ecosystem API gateway, and also a sidecar to let other compute language program access the dubbo clusters by HTTP/gRPC protocol. As an API gateway, Pixiu can receive external network requests, convert them into dubbo and other protocol requests, and forward them to the back cluster; as a sidecar, Pixiu expects to register to the Dubbo cluster instead of the proxy service, allowing multilingual services to access the Dubbo cluster to provide faster solution

Quick Start

you can find out all demo in https://github.com/apache/dubbo-go-pixiu-samples. download it and operate as below.

cd samples dir

cd dubbogo/simple

we can use start.sh to run samples quickly. for more info, execute command as below for more help

./start.sh [action] [project]
./start.sh help

we run body samples below step

prepare config file and docker

prepare command will prepare dubbo-server and pixiu config file and start docker container needed

./start.sh prepare body

if prepare config file manually, notice:

  • modify $PROJECT_DIR in conf.yaml to absolute path in your compute

start dubbo or http server

./start.sh startServer body

start pixiu

./start.sh startPixiu body

if run pixiu manually in pixiu project, use command as below.

 go run cmd/pixiu/*.go gateway start -c /[absolute-path]/dubbo-go-pixiu/samples/dubbogo/simple/body/pixiu/conf.yaml

Try a request

use curl to try or use unit test

curl -X POST 'localhost:8881/api/v1/test-dubbo/user' -d '{"id":"0003","code":3,"name":"dubbogo","age":99}' --header 'Content-Type: application/json' 
./start.sh startTest body

Clean

./start.sh clean body

Start Docker

docker run --name pixiu-gateway -p 8888:8888 dubbogopixiu/dubbo-go-pixiu:latest
docker run --name pixiu-gateway -p 8888:8888 \
    -v /yourpath/conf.yaml:/etc/pixiu/conf.yaml \
    -v /yourpath/log.yml:/etc/pixiu/log.yml \
    dubbogopixiu/dubbo-go-pixiu:latest

Features

  • Multi-protocol support: Currently, Http, Dubbo2, Triple, gRPC protocol proxy and conversion are supported, and other protocols are being continuously integrated.
  • Safety certificate: Support HTTPS, JWT Token verification and other security authentication measures.
  • Registry integration: Support to obtain service metadata from Dubbo or Spring Cloud cluster, support ZK, Nacos registry.
  • Traffic management: Integrate with sentinel, support multiple protocols for rate limiting.
  • Observability: Integrate with opentelemetry and jaeger for distributed tracing.
  • Admin and visual interface: Have pixiu-admin for remote administration and visualization

Control Plane

The pixiu control plane is forked from istio v1.14.3. Offers a variety of capabilities, including service discovery, traffic management, security management.

Contact Us

The project is under intensively iteration, you are more than welcome to use, suggest and contribute codes.

Community

DingDing Group (31203920):

flowchart

We welcome the friends who can give us constructing suggestions instead of known-nothing.

License

Apache License, Version 2.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].