Только для образовательных целей, мне нужна схема / схемы / описание процесса снятия наличных в банкомате, включая вычет с банковского счета суммы снятых денег.
Итак, участниками схемы являются:
- Пользователь банкомата (который может / не может / задерживается / не смог снять свои деньги)
- Банк, которому принадлежит учетная запись пользователя (бэкэнд, дата-центр банка + БД)
- Банковский счет пользователя, который должен быть вычтен в случае успеха или остаться неизменным в случае любого сбоя
- Задержки / сбои при передаче данных
- Точки отказа
- Процесс восстановления
- Транзакции (2 этапа? Я не уверен ...)
- Тайм-ауты: передача данных / удержание денег на счете / освобождение удержания
- Используемые протоколы
- Сохраненные данные / состояния / сеансы / bean-компоненты
Это только для обучения. Мне не нужны настоящие банковские законы, правила снятия наличных в банкоматах, проверка банкнот, видеонаблюдение, PIN-коды, анти-скимминг и другие детали. Меня больше всего интересуют архитектура, транзакции, точки отказа и восстановление после сбоев без клерков / технического персонала банка.
Я ценю эфирные ссылки, слайдшери, или опишите здесь, или пример кода или т. Д.
Заранее спасибо