Hardcode danh sách profile_ids trong worker sẽ vỡ khi agency scale 100+ tài khoản Shopee, TikTok Shop, hoặc Amazon. Profile pool quản lý tập profile theo tier (prod, warm, burn) trong Redis — worker pop profile phù hợp thay vì gán cố định.

Kiến trúc

CMDB (Postgres/Notion) → sync → Redis SET mlx:pool:prod
Health cron           → probe start/stop → demote failed
Worker                → SPOP hoặc SRANDMEMBER + lease
Ban signal            → SMOVE prod → burn

Redis keys

KeyTypeMục đích
mlx:pool:prodSETProfile sẵn sàng job production
mlx:pool:warmSETĐang nuôi trust / cookie
mlx:pool:burnSETBan hoặc forensics — không route job
mlx:profile:meta:{uuid}HASHgeo, platform, client_id, last_probe

Chọn profile theo geo/platform

def pick_profile(platform: str, geo: str) -> str | None:
    candidates = r.smembers("mlx:pool:prod")
    for pid in candidates:
        meta = r.hgetall(f"mlx:profile:meta:{pid}")
        if meta.get("platform") == platform and meta.get("geo") == geo:
            if try_lease(pid, WORKER_ID):
                return pid
    return None

Cross-listing EU/US: mỗi marketplace một profile — xem EU CMDB (EN) hoặc US CMDB (EN).

Health probe

Promote warm → prod

Profile mới cần cooldown (7–14 ngày tùy platform) + manual spot-check trước khi SMOVE warm prod. Không promote hàng loạt cùng lúc — tránh spike fingerprint cluster.

Ban → burn tier

Khi Grafana/Slack báo ban: SMOVE prod burn, pause job routing cho UUID đó. Quy trình: Ban recovery (VI) · Clone forensics (EN).

Liên quan

Công bố: MLX-MMO liên kết affiliate với Multilogin. 70+ hướng dẫn EN miễn phí.