GitHub user Alanxtl edited a discussion: Dubbo-Go-Pixiu 1.1.0 Release doc 发版文档
# Apache Dubbo-Go-Pixiu 1.1.0 Released
## Toward a Next-Generation AI Gateway and Cloud-Native Application Gateway
> **A production-ready API & AI Gateway for the AI era**
The **Apache Dubbo-Go-Pixiu 1.1.0** release is now officially available 🎉
This is a **major milestone release** that marks Pixiu’s evolution from a
traditional API Gateway into:
> **A Next-Generation AI Gateway + Kubernetes Application Gateway**
If you are working on **LLM integration, AI gateways, streaming inference, MCP,
or cloud-native traffic governance**, Pixiu 1.1.0 is designed for you.
---
## What’s New in Pixiu 1.1.0 — At a Glance
Pixiu 1.1.0 focuses on three major capability pillars:
* **AI Gateway** @Alanxtl
* Unified LLM access and governance
* Native streaming inference (HTTP / SSE)
* Retry, fallback, and token-based cost governance
* **MCP Gateway** @Similarityoung
* Native Model Context Protocol (MCP) Server
* Tool-based service exposure for AI Agents
* **Cloud-Native Application Gateway** @mfordjody
* Re-architected Kubernetes Ingress & routing model
* Modern Application Gateway design
---
## Pixiu as a Production-Ready AI Gateway
With 1.1.0, Pixiu becomes a **first-class AI Gateway**, with a clear goal:
> **Enable enterprises to access, govern, and observe all AI capabilities
> through a single gateway**
### Key AI Gateway Capabilities
* Unified LLM Proxy (OpenAI-compatible, private models, self-hosted models)
* Native HTTP / SSE streaming inference
* Model-level retry and fallback strategies
* Token counting, logging, and billing extensions
* API key management, health checks, and observability
---
## AI Gateway Usage Example (LLM Proxy)
The following example shows how to use Pixiu as an **LLM Gateway**, exposing a
unified `/chat/completions` endpoint while forwarding requests to upstream
model providers.
### Example Configuration
```yaml
static_resources:
listeners:
- name: "llm_proxy"
protocol_type: "HTTP"
address:
socket_address:
address: "0.0.0.0"
port: 8888
filter_chains:
filters:
- name: dgp.filter.httpconnectionmanager
config:
route_config:
routes:
- match:
prefix: "/chat/completions"
route:
cluster: "chat"
cluster_not_found_response_code: 505
http_filters:
- name: dgp.filter.llm.proxy
config:
maxIdleConns: 100
maxIdleConnsPerHost: 100
maxConnsPerHost: 100
scheme: "https"
- name: dgp.filter.llm.tokenizer
config:
log_to_console: true
config:
idle_timeout: 5s
read_timeout: 50s
write_timeout: 50s
clusters:
- name: "chat"
lb_policy: "lb"
endpoints:
- id: 1
socket_address:
domains:
- "api.deepseek.com"
llm_meta:
retry_policy:
name: "CountBased"
times: 3
metric:
enable: true
prometheus_port: 2222
```
### Request Example
```bash
curl -X POST http://127.0.0.1:8888/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"messages": [
{ "role": "user", "content": "Hello Pixiu AI Gateway" }
],
"stream": false
}'
```
### Notes
* Pixiu exposes a **single unified AI endpoint**, hiding upstream vendor
differences.
* Retry policies are defined at the **model (cluster) level**.
* Native support for streaming (HTTP / SSE) is available for chat and agent
scenarios.
* Tokenizer filters can be extended for billing, quotas, or auditing.
For more information, refer to
https://github.com/apache/dubbo-go-pixiu-samples/blob/main/llm
---
## Native Model Context Protocol (MCP) Support
Pixiu 1.1.0 introduces **first-class MCP support**, allowing Pixiu to run
directly as an **MCP Server**.
This enables a new integration model:
> **Business services can be exposed as MCP tools and invoked directly by AI
> Agents**
### MCP Gateway Capabilities
* MCP Server Filter
* Tool-based service definitions
* Path / query / body parameter injection and validation
* Streaming invocation support
* Optional integration with service registries (e.g., Nacos)
---
## MCP Gateway Usage Example (MCP Server)
The following example shows how to expose HTTP APIs as **MCP Tools**.
```yaml
static_resources:
listeners:
- name: "net/http"
protocol_type: "HTTP"
address:
socket_address:
address: "0.0.0.0"
port: 8888
filter_chains:
filters:
- name: "dgp.filter.httpconnectionmanager"
config:
route_config:
routes:
# MCP endpoint route
- match:
prefix: "/mcp"
route:
cluster: "mock-server"
cluster_not_found_response_code: 505
# API routes for server testing
- match:
prefix: "/api"
route:
cluster: "mock-server"
cluster_not_found_response_code: 404
# Root route
- match:
prefix: "/"
route:
cluster: "mock-server"
cluster_not_found_response_code: 404
http_filters:
# MCP Server Filter - Tools Testing Configuration
- name: "dgp.filter.mcp.mcpserver"
config:
server_info:
name: "MCP Tools Test Server"
version: "1.0.0"
description: "MCP Server for testing all tools
functionality"
instructions: "Use these tools to interact with the mock
server API. Test all CRUD operations and search functionality."
# Tools Configuration - Testing all server endpoints
tools:
# Tool 1: Get User by ID
- name: "get_user"
description: "Get user information by ID with optional
profile details"
cluster: "mock-server"
request:
method: "GET"
path: "/api/users/{id}"
timeout: "10s"
args:
- name: "id"
type: "integer"
in: "path"
description: "User ID to retrieve"
required: true
- name: "include_profile"
type: "boolean"
in: "query"
description: "Include user profile information"
required: false
default: false
# Tool 2: Search Users
- name: "search_users"
description: "Search users by name or email with
pagination"
cluster: "mock-server"
request:
method: "GET"
path: "/api/users/search"
timeout: "10s"
args:
- name: "q"
type: "string"
in: "query"
description: "Search query (name or email)"
required: true
- name: "page"
type: "integer"
in: "query"
description: "Page number for pagination"
required: false
default: 1
- name: "limit"
type: "integer"
in: "query"
description: "Number of results per page (1-100)"
required: false
default: 10
# Tool 3: Create User
- name: "create_user"
description: "Create a new user account"
cluster: "mock-server"
request:
method: "POST"
path: "/api/users"
timeout: "10s"
headers:
Content-Type: "application/json"
args:
- name: "name"
type: "string"
in: "body"
description: "User's full name"
required: true
- name: "email"
type: "string"
in: "body"
description: "User's email address"
required: true
- name: "age"
type: "integer"
in: "body"
description: "User's age"
required: false
# Tool 4: Get User Posts
- name: "get_user_posts"
description: "Get all posts by a specific user with
status filtering"
cluster: "mock-server"
request:
method: "GET"
path: "/api/users/{user_id}/posts"
timeout: "10s"
args:
- name: "user_id"
type: "integer"
in: "path"
description: "User ID to get posts for"
required: true
- name: "status"
type: "string"
in: "query"
description: "Filter posts by status"
required: false
default: "published"
enum: ["published", "draft", "all"]
# Tool 5: Health Check
- name: "health_check"
description: "Check the health and status of the server
service"
cluster: "mock-server"
request:
method: "GET"
path: "/api/health"
timeout: "5s"
# Tool 6: Get Server Info
- name: "get_server_info"
description: "Get basic server information and
available endpoints"
cluster: "mock-server"
request:
method: "GET"
path: "/"
timeout: "5s"
# HTTP Proxy Filter
- name: "dgp.filter.http.httpproxy"
clusters:
- name: "mock-server"
type: "STATIC"
lb_policy: "ROUND_ROBIN"
endpoints:
- socket_address:
address: "127.0.0.1"
port: 8081
```
### How It Works
* Each tool maps to a backend HTTP API.
* Pixiu handles parameter binding, validation, and request forwarding.
* AI Agents interact with Pixiu using standard MCP semantics.
For more information, refer to
https://github.com/apache/dubbo-go-pixiu-samples/blob/main/mcp
---
## Kubernetes Ingress & Application Gateway Upgrade
Pixiu 1.1.0 includes a **significant re-architecture** of its Ingress and
routing system:
* Redesigned routing mechanism
* Modern Application Gateway architecture
* Support for a new Ingress Controller
* Fine-grained policy and traffic governance
Pixiu is not just a gateway—it is the **cloud-native traffic entry point and
control plane**.
### Ingress Usage
Pixiu recommends using **Gateway API Extensions** for Kubernetes integration:
👉
[https://cn.dubbo.apache.org/zh-cn/overview/reference/pixiu/overview/gatewayapi_extensions/](https://cn.dubbo.apache.org/zh-cn/overview/reference/pixiu/overview/gatewayapi_extensions/)
---
## Dynamic Governance & Engineering Improvements
### Dynamic Capabilities
* Nacos-based service and AI endpoint discovery
* Configuration center listening and hot reload
* Dynamic route and cluster generation
### Engineering Quality
* Unified error code system
* Unified metrics and observability filters
* Multiple concurrency, memory, and stability fixes
* Go version upgraded to **1.25**
---
## Documentation & Ecosystem
* Fully rewritten README (English & Chinese)
* Refactored admin and governance documentation
* Added MCP and OPA usage guides
* Continuous improvements to the Admin Console
---
## Community & Contributors
Pixiu 1.1.0 is a **community-driven release**.
Special thanks to all contributors (alphabetical order):
@1kasa
@Alanxtl
@baerwang
@FoghostCn
@KamToHung
@ma642
@mark4z
@marsevilspirit
@mfordjody
@mutezebra
@nanjiek
@No-SilverBullet
@PhilYue
@Similarityoung
@testwill
@yuluo-yx
---
## Get Started
* **Project Repository**
[https://github.com/apache/dubbo-go-pixiu](https://github.com/apache/dubbo-go-pixiu)
* **Official Samples**
[https://github.com/apache/dubbo-go-pixiu-samples](https://github.com/apache/dubbo-go-pixiu-samples)
---
## Final Words
Pixiu 1.1.0 is not just a version upgrade—
it is a **foundation for production-grade AI Gateway adoption**.
> **One Gateway. All AI. Cloud-Native Ready.**
---
# Apache Dubbo-Go-Pixiu 1.1.0 正式发布
## 迈向下一代 AI 网关与云原生应用网关
> **面向 AI 时代的生产级 API & AI 网关**
**Apache Dubbo-Go-Pixiu 1.1.0** 现已正式发布 🎉
这是一次**重要的里程碑版本**,标志着 Pixiu 从传统 API 网关正式演进为:
> **下一代 AI 网关 + Kubernetes 应用网关**
如果你正在从事 **LLM 集成、AI 网关、流式推理、MCP 或云原生流量治理**,那么 Pixiu 1.1.0 正是为你而设计。
---
## Pixiu 1.1.0 新特性一览
Pixiu 1.1.0 聚焦三大核心能力支柱:
* **AI 网关** @Alanxtl
* 统一的 LLM 接入与治理
* 原生流式推理支持(HTTP / SSE)
* 重试、回退及基于 Token 的成本治理
* **MCP 网关** @Similarityoung
* 原生 Model Context Protocol(MCP)Server
* 面向 AI Agent 的工具化服务暴露
* **云原生 Ingress / Application 网关** @mfordjody
* 全新重构的 Kubernetes Ingress 与路由模型
* 现代化 Application 网关架构设计
---
## Pixiu:生产级 AI 网关
在 1.1.0 版本中,Pixiu 正式成为**生产级 AI 网关**,其核心目标是:
> **让企业通过一个统一网关访问、治理并观测所有 AI 能力**
### AI 网关核心能力
* 统一 LLM 代理(兼容 OpenAI 接口,支持私有模型、自托管模型)
* 原生 HTTP / SSE 流式推理
* 模型级别的重试与回退策略
* Token 统计、日志与计费扩展能力
* API Key 管理、健康检查与可观测性
---
## AI 网关使用示例(LLM Proxy)
以下示例展示了如何使用 Pixiu 作为 **LLM 网关**,通过统一的 `/chat/completions` 接口,将请求转发至上游模型服务。
### 示例配置
```yaml
static_resources:
listeners:
- name: "llm_proxy"
protocol_type: "HTTP"
address:
socket_address:
address: "0.0.0.0"
port: 8888
filter_chains:
filters:
- name: dgp.filter.httpconnectionmanager
config:
route_config:
routes:
- match:
prefix: "/chat/completions"
route:
cluster: "chat"
cluster_not_found_response_code: 505
http_filters:
- name: dgp.filter.llm.proxy
config:
maxIdleConns: 100
maxIdleConnsPerHost: 100
maxConnsPerHost: 100
scheme: "https"
- name: dgp.filter.llm.tokenizer
config:
log_to_console: true
config:
idle_timeout: 5s
read_timeout: 50s
write_timeout: 50s
clusters:
- name: "chat"
lb_policy: "lb"
endpoints:
- id: 1
socket_address:
domains:
- "api.deepseek.com"
llm_meta:
retry_policy:
name: "CountBased"
times: 3
metric:
enable: true
prometheus_port: 2222
```
### 请求示例
```bash
curl -X POST http://127.0.0.1:8888/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"messages": [
{ "role": "user", "content": "Hello Pixiu AI Gateway" }
],
"stream": false
}'
```
### 说明
* Pixiu 对外暴露**统一的 AI 接口**,屏蔽上游模型厂商差异
* 重试策略在**模型(Cluster)级别**定义
* 原生支持流式(HTTP / SSE),适用于对话与 Agent 场景
* Tokenizer 过滤器可扩展用于计费、配额或审计
更多信息请参考:
[https://github.com/apache/dubbo-go-pixiu-samples/blob/main/llm](https://github.com/apache/dubbo-go-pixiu-samples/blob/main/llm)
---
## 原生 Model Context Protocol(MCP)支持
Pixiu 1.1.0 引入**MCP 支持**,可直接作为 **MCP Server** 运行。
这开启了一种全新的集成模式:
> **业务服务可以以 MCP 工具(Tool)的形式暴露,并被 AI Agent 直接调用**
### MCP 网关能力
* MCP Server 过滤器
* 基于工具(Tool)的服务定义
* Path / Query / Body 参数注入与校验
* 流式调用支持
* 可选服务注册中心集成(如 Nacos)
---
## MCP 网关使用示例(MCP Server)
以下示例展示了如何将 HTTP API 暴露为 **MCP 工具**。
```yaml
static_resources:
listeners:
- name: "net/http"
protocol_type: "HTTP"
address:
socket_address:
address: "0.0.0.0"
port: 8888
filter_chains:
filters:
- name: "dgp.filter.httpconnectionmanager"
config:
route_config:
routes:
# MCP endpoint route
- match:
prefix: "/mcp"
route:
cluster: "mock-server"
cluster_not_found_response_code: 505
# API routes for server testing
- match:
prefix: "/api"
route:
cluster: "mock-server"
cluster_not_found_response_code: 404
# Root route
- match:
prefix: "/"
route:
cluster: "mock-server"
cluster_not_found_response_code: 404
http_filters:
# MCP Server Filter - Tools Testing Configuration
- name: "dgp.filter.mcp.mcpserver"
config:
server_info:
name: "MCP Tools Test Server"
version: "1.0.0"
description: "MCP Server for testing all tools
functionality"
instructions: "Use these tools to interact with the mock
server API. Test all CRUD operations and search functionality."
# Tools Configuration - Testing all server endpoints
tools:
# Tool 1: Get User by ID
- name: "get_user"
description: "Get user information by ID with optional
profile details"
cluster: "mock-server"
request:
method: "GET"
path: "/api/users/{id}"
timeout: "10s"
args:
- name: "id"
type: "integer"
in: "path"
description: "User ID to retrieve"
required: true
- name: "include_profile"
type: "boolean"
in: "query"
description: "Include user profile information"
required: false
default: false
# Tool 2: Search Users
- name: "search_users"
description: "Search users by name or email with
pagination"
cluster: "mock-server"
request:
method: "GET"
path: "/api/users/search"
timeout: "10s"
args:
- name: "q"
type: "string"
in: "query"
description: "Search query (name or email)"
required: true
- name: "page"
type: "integer"
in: "query"
description: "Page number for pagination"
required: false
default: 1
- name: "limit"
type: "integer"
in: "query"
description: "Number of results per page (1-100)"
required: false
default: 10
# Tool 3: Create User
- name: "create_user"
description: "Create a new user account"
cluster: "mock-server"
request:
method: "POST"
path: "/api/users"
timeout: "10s"
headers:
Content-Type: "application/json"
args:
- name: "name"
type: "string"
in: "body"
description: "User's full name"
required: true
- name: "email"
type: "string"
in: "body"
description: "User's email address"
required: true
- name: "age"
type: "integer"
in: "body"
description: "User's age"
required: false
# Tool 4: Get User Posts
- name: "get_user_posts"
description: "Get all posts by a specific user with
status filtering"
cluster: "mock-server"
request:
method: "GET"
path: "/api/users/{user_id}/posts"
timeout: "10s"
args:
- name: "user_id"
type: "integer"
in: "path"
description: "User ID to get posts for"
required: true
- name: "status"
type: "string"
in: "query"
description: "Filter posts by status"
required: false
default: "published"
enum: ["published", "draft", "all"]
# Tool 5: Health Check
- name: "health_check"
description: "Check the health and status of the server
service"
cluster: "mock-server"
request:
method: "GET"
path: "/api/health"
timeout: "5s"
# Tool 6: Get Server Info
- name: "get_server_info"
description: "Get basic server information and
available endpoints"
cluster: "mock-server"
request:
method: "GET"
path: "/"
timeout: "5s"
# HTTP Proxy Filter
- name: "dgp.filter.http.httpproxy"
clusters:
- name: "mock-server"
type: "STATIC"
lb_policy: "ROUND_ROBIN"
endpoints:
- socket_address:
address: "127.0.0.1"
port: 8081
```
### 工作原理
* 每个 Tool 映射到一个后端 HTTP API
* Pixiu 负责参数绑定、校验与请求转发
* AI Agent 通过标准 MCP 语义与 Pixiu 交互
更多信息请参考:
[https://github.com/apache/dubbo-go-pixiu-samples/blob/main/mcp](https://github.com/apache/dubbo-go-pixiu-samples/blob/main/mcp)
---
## Kubernetes Ingress 与 Application 网关升级
Pixiu 1.1.0 对 Ingress 与路由系统进行了**重大重构**:
* 全新路由机制设计
* 现代化 Application 网关架构
* 支持新的 Ingress Controller
* 更精细的策略与流量治理能力
Pixiu 不只是一个网关——
它是**云原生流量入口与控制平面**。
### Ingress 使用方式
Pixiu 推荐使用 **Gateway API Extensions** 进行 Kubernetes 集成:
👉
[https://cn.dubbo.apache.org/zh-cn/overview/reference/pixiu/overview/gatewayapi_extensions/](https://cn.dubbo.apache.org/zh-cn/overview/reference/pixiu/overview/gatewayapi_extensions/)
---
## 动态治理与工程能力提升
### 动态能力
* 基于 Nacos 的服务与 AI Endpoint 发现
* 配置中心监听与热更新
* 动态路由与集群生成
### 工程质量
* 统一错误码体系
* 统一指标与可观测性过滤器
* 多项并发、内存与稳定性修复
* Go 版本升级至 **1.25**
---
## 文档与生态
* 全新重写的 README(中 / 英)
* 重构 Admin 与治理文档
* 新增 MCP 与 OPA 使用指南
* Admin Console 持续演进
---
## 社区与贡献者
Pixiu 1.1.0 是一次**完全由社区驱动的版本发布**。
特别感谢以下贡献者(按字母顺序):
@1kasa
@Alanxtl
@baerwang
@FoghostCn
@KamToHung
@ma642
@mark4z
@marsevilspirit
@mfordjody
@mutezebra
@nanjiek
@No-SilverBullet
@PhilYue
@Similarityoung
@testwill
@yuluo-yx
---
## 快速开始
* **项目仓库**
[https://github.com/apache/dubbo-go-pixiu](https://github.com/apache/dubbo-go-pixiu)
* **官方示例**
[https://github.com/apache/dubbo-go-pixiu-samples](https://github.com/apache/dubbo-go-pixiu-samples)
---
## 结语
Pixiu 1.1.0 不只是一次版本升级,
它是**生产级 AI 网关落地的基础设施**。
> **一个网关,连接所有 AI。云原生,已就绪。**
GitHub link: https://github.com/apache/dubbo-go-pixiu/discussions/840
----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]