# Author: fruit.com.cn # # 转码 worker 独立进程:只做队列消费,不对外提供接口。 # 端口用 0(随机)——本进程不需要被访问,也不会跟 8080/8081 抢端口。 server: port: 0 spring: application: name: fruitshorts-transcode-worker autoconfigure: exclude: org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration datasource: driver-class-name: org.postgresql.Driver # 与两个入口同一个库(worker 消费 transcode_task) url: ${DB_URL:jdbc:postgresql://127.0.0.1:5432/fruitshorts} username: ${DB_USER:fruitshorts} password: ${DB_PASSWORD:fruitshorts} mybatis-plus: configuration: map-underscore-to-camel-case: true global-config: banner: false db-config: # 与两个入口保持一致:主键由应用侧雪花生成(S0),否则 worker 插入 media_rendition 会没有 id id-type: assign_id logic-delete-field: deleted logic-delete-value: 1 logic-not-delete-value: 0 sequence: # 单机固定值;多实例部署前改成按实例分配 worker-id: 2 datacenter-id: 1 fruitshorts: media: # 必须与 app-api/admin-api 指向同一个存储根,worker 才找得到上传后的源文件 root-dir: ${MEDIA_ROOT_DIR:./data/uploads} public-prefix: /files transcode: # 只有本进程打开转码(§8.5 隔离要求) worker-enabled: true poll-delay-ms: 3000 ffmpeg-path: ${FFMPEG_PATH:ffmpeg} ffprobe-path: ${FFPROBE_PATH:ffprobe} segment-seconds: 6 poster-second: 1 logging: level: com.fruitshorts: info