• सुझाव है कि application data और job queue, दोनों के लिए एक ही database (Postgres) का उपयोग किया जाए। इससे dependencies न्यूनतम रहती हैं
  • दूसरे database changes के साथ transaction के रूप में jobs को queue में डालने से distributed systems की पूरी एक श्रेणी की समस्याओं से बचा जा सकता है
  • Transactional enqueueing: transaction commit होने पर job queue में जाती है, transaction rollback होने पर हटा दी जाती है, और commit होने तक job दिखाई नहीं देती
  • Postgres की NOTIFY capability का उपयोग करके, जैसे ही job तैयार होती है, job queue worker को जगा कर काम शुरू कर सकती है, जिससे job शुरू होने से पहले की औसत latency milliseconds तक घट सकती है
  • Postgres के binary protocol का उपयोग किया जाता है, और database के साथ round trips को न्यूनतम रखकर efficiency बढ़ाई जाती है
    • Bulk Job Insert को COPY FROM का उपयोग करके कुशलतापूर्वक किया जाता है

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.