Sobes.tech
Junior — Middle

Оё метавонед фаҳмонед, ки концепсияи Transactional Outbox чист ва чаро истифода мешавад?

sobes.tech AI

Ҷавоб аз AI

Transactional Outbox — бу паттерн, ки истифода мешавад барои таъмини расонидани боварибахшонаи паёмҳо дар системаҳои тақсимшуда, махсусан вақте ки бояд мутобиқат байни базаи додаҳо ва системаи мубодилаи паёмҳоро кафолат дод.

Ҳикоя ин аст, ки дар вақти иҷрои амалиёти бизнес, ки маълумотҳоро тағир медиҳад, ҳамзамон бо ин тағиротҳо, сабти махсус (outbox) бо маълумот дар бораи ҳодиса, ки бояд нашр шавад, сабт мешавад.

Пас аз коммити муваффақи транзаксия, раванд ё хидмате ҷудогона ин сабтҳоро мехонад ва паёмҳоро ба навбат ё брокери паёмҳо мефиристад.

Ин кӯмак мекунад, ки мушкилоти аз даст додани паёмҳо ё номувофиқии маълумотҳо пешгирӣ шавад, зеро сабт дар outbox ва тағироти маълумотҳо атомӣ мешаванд.

Масалан:

  1. Дар транзаксия, мо ҷадвали фармоишҳоро навсозӣ мекунем ва сабти нав дар ҷадвали outbox илова мекунем.
  2. Пас аз коммит, коргари ҷудогона ин сабтҳоро мехонад ва ҳодисаҳоро дар Kafka, RabbitMQ ва ғайра нашр мекунад.
  3. Пас аз интиқоли муваффақ, сабти outbox тоза ё ҳамчун коркардшуда нишон дода мешавад.

Ин роҳ имкон медиҳад, ки ҳамгироии боэътимод байни базаи додаҳо ва системаи мубодилаи паёмҳо ба даст ояд, бидуни аз даст додани маълумот.