按 docs/order-gateway.md 落地:第三个部署单元 app.gateway(:31109)承担任务队列 + 状态镜像;本地 worker 在 app.trading.worker 内,按 RAKUTEN_ORDER_GATEWAY_URL 决定是否启动。规格 §5 最关键约束已守:租约过期绝不自动重投,恢复只能 reclaim, worker 收到 lease_count>1 时先核对站点订单。 站点交互(加购/下单/付款/订单列表反查)按规格 §10 留接口缝,site_interact.py 全部 NotImplementedError,verify.py 恒返回 unknown——等真实账号实测后再填, 不写猜测的提交逻辑。 310 个测试全绿,覆盖规格 §9 验收清单 12 条;架构测试守住三方互不 import。 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
13 lines
640 B
Python
13 lines
640 B
Python
"""下单任务网关:第三个部署单元
|
|
|
|
抓取服务(app.scraping)匿名、无状态、可多开;交易服务(app.trading)带账号、
|
|
有状态、单实例;本网关是任务队列与状态镜像,部署在服务器侧,**独立于两者**:
|
|
|
|
- 与抓取服务分进程的原因:抓取实例可以多开,而任务队列有状态,多实例会抢同一批
|
|
任务(同一账号的写操作必须串行)。
|
|
- 与交易服务分进程的原因:交易在本地(NAT 后无公网入口),网关在服务器,本地
|
|
通过出站长轮询从这里领任务。
|
|
|
|
完整规格见 docs/order-gateway.md。
|
|
"""
|