业务任务与 Outbox 消息同一事务落库,避免“数据库成功但消息没发出去”。 RabbitMQ 使用持久化消息、发布确认、手动 ACK、Quorum Queue、死信队列。 增加处理租约、心跳、异常重试、最大重试次数和幂等状态控制。 保留 InMemory 模式,开发环境无需安装 RabbitMQ。 支持多实例竞争消费,后续可以横向扩容。 新增 /health/messaging 消息系统健康检查。
23 lines
655 B
Bash
23 lines
655 B
Bash
# 复制为 .env.docker,供 compose.example.yml 在运行时读取。
|
|
# 空值必须在启动前填写。建议使用十六进制或只包含字母数字的随机值。
|
|
JIAOWU_IMAGE=jiaowu:local
|
|
JIAOWU_PORT=8080
|
|
|
|
MYSQL_DATABASE=jiaowu_demo
|
|
MYSQL_USER=jiaowu
|
|
MYSQL_PASSWORD=
|
|
MYSQL_ROOT_PASSWORD=
|
|
|
|
RABBITMQ_USER=jiaowu
|
|
RABBITMQ_PASSWORD=
|
|
|
|
JWT_KEY=
|
|
ALLOWED_HOSTS=localhost
|
|
CORS_ORIGIN=http://localhost:8080
|
|
OFFICIAL_DOCUMENTS_PUBLIC_BASE_URL=http://localhost:8080
|
|
|
|
# 仅首次创建演示管理员时使用;演示数据成功写入后删除下面三行。
|
|
SEED_ADMIN_USERNAME=demo-admin
|
|
SEED_ADMIN_PASSWORD=
|
|
SEED_ADMIN_DISPLAY_NAME=演示环境管理员
|