Skip to content

Question: realistic account scanning capacity per instance + multi-machine scaling #261

Description

@roe23874-collab

Context

I'm building a custodial XMR ecommerce store where pledge is handled entirely in PostgreSQL (no on-chain movement between deposit and withdrawal).

Architecture

monerod (single instance, NVMe SSD)
  └── monero-lws (scanning deposits via ZMQ webhook)

Questions

1. What is the realistic account scanning ceiling for a single monero-lws instance before scan lag starts falling behind new blocks? Approximate hardware context (e.g. 8-core, 12GB RAM, NVMe) would be very helpful.

2. The multi-machine remote scanning feature (msgpack over TCP/ASIO) is already merged — is it production-ready for this use case, or still experimental?

3. With remote scanning, is the architecture below correct: one monero-lws REST frontend + N scanner worker processes all connected to one monerod?

monerod (1 instance)
  ├── lws-scanner-worker-A  (users 0–500k)
  ├── lws-scanner-worker-B  (users 500k–1M)
  └── lws REST frontend (webhooks → app)

4. Any rough guidance on accounts-per-worker given your testing with dummy accounts (referenced in MAGICGrants/Monero-Fund#31)?

What I've already read

Issue #134 (REST load testing), Q1/Q2 2024 CCS completion notes, Q3 2024 CCS proposal, and the remote scanning PR discussion. The REST throughput numbers are clear — the scanning capacity question is the missing piece.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions