सभी किताबें

पेशेवर

ऐप्स परिचय Coach लॉग इन पढ़ना शुरू करें

Quantitative Finance · शब्दावली

Idempotent processing क्या है?

Definition 24.4 Low-Latency Software · अध्याय 24 — Resilience

An operation is processed idempotently if doing it twice has the same effect as doing it once. For orders, it means that every order carries an identifier fixed when it is created, so that the venue, or the firm’s own gateway, recognises a second copy and discards it.

procedureduplicates, by stage of the order at the failurelargest position
journaledin flightat the venuereported
fresh identifiers0272701 100
fresh identifiers, reconciled first00001 000
idempotency keys00001 000
Table 24.1. The primary killed at each of four stages of each of the scenario’s 46 orders (184 failovers per procedure) against the matching engine; recovery took 2.8 to 3.1 ms3.1\,\mathrm{m}\mathrm{s} in every case, and the state always equalled a replay of the journal. Data: fig_failover.py (deterministic).
The life of one order and the window in which a failover can duplicate it: from the moment it leaves to the moment its report is journaled, two network crossings. With fresh identifiers and no reconciliation, a failure anywhere in the red window sends the order twice if it had been executed.
Figure 24.2. The life of one order and the window in which a failover can duplicate it: from the moment it leaves to the moment its report is journaled, two network crossings. With fresh identifiers and no reconciliation, a failure anywhere in the red window sends the order twice if it had been executed.
अध्याय में पढ़ें →