Appearance
运行时组件
Service Forge 通过 runtime.components 选择需要启动的组件,以及每个组件使用的 provider。
默认组件
生成项目默认使用适合本地开发的 provider:
yaml
runtime:
components:
- name: store
provider: noop
- name: cache
provider: memory
- name: eventbus
provider: memory
- name: registry
provider: memory
- name: tracing
provider: noop可用 provider
| 组件 | Provider | 适用场景 |
|---|---|---|
| store | noop, postgres | 本地跳过存储,或连接 PostgreSQL。 |
| cache | noop, memory, redis | 本地内存缓存,或连接 Redis。 |
| eventbus | noop, memory, rabbitmq | 本地内存事件,或连接 RabbitMQ。 |
| registry | noop, memory, consul | 本地注册表,或连接 Consul。 |
| tracing | noop, otel | 关闭追踪,或使用 OpenTelemetry。 |
切换为真实基础设施
在 config/base.yaml 中修改 provider:
yaml
runtime:
components:
- name: store
provider: postgres
- name: cache
provider: redis
- name: eventbus
provider: rabbitmq
- name: registry
provider: consul
- name: tracing
provider: otel然后补充对应模块配置:
yaml
modules:
postgres:
host: localhost
port: 5432
user: postgres
password: postgres
database: demo
sslmode: disable
redis:
addr: localhost:6379
rabbitmq:
url: amqp://guest:guest@localhost:5672/
exchange: events
consul:
address: localhost:8500临时禁用组件
可以保留组件配置,但不启动它:
yaml
runtime:
components:
- name: eventbus
provider: rabbitmq
enabled: falseenabled 省略时默认启用。
