جميع الكتب

مهني

1 Markets I: The Ecosystem and Exchange-Traded Marketsالأسواق عبر الإنترنت 2 Markets II: Rates, FX and Creditالأسواق عبر الإنترنت 3 Markets III: Commodities, Energy and Cryptoالأسواق عبر الإنترنت 4 Quantitative Methodsالأساليب عبر الإنترنت 5 Derivatives and Volatilityالمشتقات عبر الإنترنت 6 Rates, Credit, XVA and Riskالفائدة والائتمان والمخاطر عبر الإنترنت 7 Research Craft: Predictors, Backtests, Measurement, Portfoliosالبحث عبر الإنترنت 8 Strategies I: Equities and Futuresالاستراتيجيات عبر الإنترنت 9 Strategies II: Volatility, Relative Value, Macro and the Bank Desksالاستراتيجيات عبر الإنترنت 10 Microstructure and Executionالتنفيذ عبر الإنترنت 11 Market Making and High-Frequency Tradingصناعة السوق عبر الإنترنت 12 Machine Learning for Marketsتعلم الآلة عبر الإنترنت 13 Low-Latency Softwareالتكنولوجيا عبر الإنترنت 14 Networks, Hardware and Trading Infrastructureالتكنولوجيا عبر الإنترنت 15 Research, Data and Risk Platformsالتكنولوجيا عبر الإنترنت 16 The Desk and the Firmالشركة عبر الإنترنت 17 The Industry: Firms, Roles and Careersالمسارات المهنية عبر الإنترنت 18 The Interview Bookالمسارات المهنية عبر الإنترنت
التطبيقات حول المدرب تسجيل الدخول ابدأ القراءة

Quantitative Finance · المسرد

ما معنى Transactional outbox؟

Definition 24.7 Research, Data and Risk Platforms · الفصل 24 — Messaging and Event-Driven Architecture

A transactional outbox is a table in a service’s own database into which the service writes each event in the same transaction as the change it announces; a separate relay reads the table, publishes the events in order, and marks them sent, so that an event is published if and only if its change was committed — at least once, with a key that lets the log or the consumer drop the repeats.

The transactional outbox: the trade and the event that announces it are committed in one database transaction; a relay publishes unsent events to the log and then marks them sent. A crash between 1 and 2 repeats an event, never loses one, and the idempotence key lets the log drop the repeat.
Figure 24.4. The transactional outbox: the trade and the event that announces it are committed in one database transaction; a relay publishes unsent events to the log and then marks them sent. A crash between 1 and 2 repeats an event, never loses one, and the idempotence key lets the log drop the repeat.
designevents lostphantom eventsduplicated events
write the trade, then publish2200
publish, then write the trade0220
outbox, relay without idempotence key0022
outbox, relay with idempotence key000
Table 24.1. 2 000 trades published with a 1% chance of a crash at the dangerous point of each design: between the two writes, or between publishing and marking an outbox row sent. A phantom event announces a trade the database does not hold.
اقرأ في الفصل →