Lynx 项目模板(Layout)
lynx-layout 是与当前 Lynx runtime 和插件模型对齐的官方服务模板仓库。
它真正展示的是什么
lynx-layout 本身不是 runtime 插件,而是一套示例应用骨架,用来展示当前 Lynx 服务应该如何装配。
代码级事实
从仓库实现可以直接看到:
- 启动入口使用
boot.NewApplication(wireApp).Run() - HTTP server 装配使用
github.com/go-lynx/lynx-http和GetHttpServer() - gRPC server 装配使用
github.com/go-lynx/lynx-grpc和GetGrpcServer(nil) - data 层已经直接依赖 MySQL、Redis 等具体插件,而不是抽象的占位包
- service registry 装配使用
lynx.GetServiceRegistry()
与真实代码一致的模板配置
当前模板实际暴露了两类很有代表性的配置视图。
configs/bootstrap.local.yaml 是更偏本地开发的可运行形态:
lynx:
http:
addr: 127.0.0.1:8000
grpc:
service:
addr: 127.0.0.1:9000
mysql:
driver: mysql
source: "..."
redis:
addrs:
- 127.0.0.1:6379
configs/bootstrap.yaml 则是更偏治理场景的窄配置形态:
lynx:
application:
name: user-service
polaris:
config_path: "configs/polaris.yaml"
这里有个很多插件文档没有讲透的点:模板不会一上来把所有插件全打开,而是先从一个可运行的小组合启动,再把治理相关配置单独叠上去。