Skip to content

Fortuneq/TransactionGo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

-TransactionGo

Механизм транзакций на GO

Setup infrastructure

  • Run db migration:

    make migrate_up

How to generate code

  • Generate SQL CRUD with sqlc:

    make sqlc
  • Generate DB mock with gomock:

    make mock

How to run

  • Run server:

    make server
  • Run test:

    make test

Запуск кода

Запуск кода

Видим рандомно сгенерированных пользователей

База данных

Попытка трансфера с недостатком средств

Недостаток средств

Обычный трансфер, по клиенту строится json вывод о балансе двух акаунтов и для разработчика также можно увидеть время когда произошёл вход в транзакцию и id трансфера

Обычный трансфер

Система очередей создана на Redis при создании каждого трансфера создаётся очередь которая возвращает json

Сохранение данных при вылете сервера нам обеспечивает журнал транзакций postgresql который находится на диске

About

Механизм транзакций на GO

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published