跳到主要内容

Plugin-driven, modular Go microservices framework. One line to run.

func main() { boot.LynxApplication(wireApp).Run() }

Three Steps to Start Go-Lynx

1
1. Install CLI Tool
go install github.com/go-lynx/lynx/cmd/lynx@latest
2
2. Initialize Project
lynx new demo1 demo2
3
3. Start with One Line
boot.LynxApplication(wireApp).Run()

What Go-Lynx can do

Lynx is equipped with a comprehensive set of key microservices capabilities

🧩

Microservice Features

Equipped with all aspects of microservices, including service discovery and registration, configuration center, distributed transaction management, communication encryption, and more.

🔌

Plug-and-Play

Go-lynx features plug-and-play integration of third-party functionalities. All modules are integrated in the form of plugins, which can be combined with each other, greatly enhancing the expandability of the plugins.

Easy to Use

The framework design is simple enough to eliminate complex design logic, allowing more focus on different plugins. Starting a microservice requires only a single line of code.

Lynx Boot & Service Sequence

sequenceDiagram
  participant User as 用户
  participant Main as main.go
  participant Config as 配置文件
  participant LynxApp as LynxApp
  participant PluginMgr as PluginManager
  participant Plugins as 插件集合
  participant Control as ControlPlane
  participant Kratos as KratosApp
  participant Service as HTTP/gRPC服务

  User->>Main: 启动应用
  Main->>Config: 读取配置
  Config->>LynxApp: 初始化 LynxApp
  LynxApp->>PluginMgr: 初始化插件管理器
  PluginMgr->>Plugins: 拓扑排序并加载插件
  Plugins->>LynxApp: 注册微服务能力
  LynxApp->>Control: 初始化控制面
  LynxApp->>Kratos: 初始化 KratosApp
  Kratos->>Service: 启动服务
  Service-->>User: 提供微服务能力
  Note over Plugins,Service: 插件可扩展服务注册/发现、限流、路由、事务、DB、MQ、Tracing 等能力

The Lynx boot and service flow is clear at a glance. The plugin mechanism enables flexible expansion of microservice capabilities, greatly improving development efficiency and maintainability.