Size: a a a

Боль Тимлида

2021 August 18

PD

Phil Delgyado in Боль Тимлида
А вот это очень тонкий момент. Увы, такие тесты - защищают от очевидных ошибок.
Потому я стараюсь всегда иметь постоянные сверки даже при вроде бы хорошо проверенных решениях.
источник

AB

Aleksandr Bespalov in Боль Тимлида
Ну, да.
источник

AB

Aleksandr Bespalov in Боль Тимлида
О. Платежки. У меня тут есть код под рукой код фин. транзакций. Так вот там всё годами сходится. Но, знаете ли, держу пари, что вы не хотели бы собственные финансы в банке пусть через эту логику если бы посмотрели в неё, в её надежность, в логику "ну прошло ж пять минут, стопудова можно выполнять операцию раз статус тот же" %) И сверки с внешней системой все всегда проходили потому что сервис никогда не лежал дольше X минут-часов, а сервис делает сверку назад на X часов отнимая от текущей даты)
источник

IA

Igor A in Боль Тимлида
О вот такой код отдел и пишет где я работаю.
источник

IA

Igor A in Боль Тимлида
Еще любим sftp проверять раз в 10мин
источник

IA

Igor A in Боль Тимлида
Но справедливости ради 2 критерия есть весьма надежных как бы ты код не написал:

1) двойная проверка. т.е. на любой коллбек ты идешь и по апи узнаешь статус ордера
2) идемпотентные апи


ну т.е. любой дикий код становится крепче если это соблюдать
источник

ОО

Олег Овсянников... in Боль Тимлида
я бы добавил 3 пункт - никогда не верить в идемпотентность внешней системы
источник

PD

Phil Delgyado in Боль Тимлида
Оххх... Да, делать доказуемо правильный код платежа - та еще радость.
Но если уметь, то можно делать достаточно надежное )
источник

PD

Phil Delgyado in Боль Тимлида
Ну, кстати, идемпотентность лишняя, достаточно безопасной повторяемости )
источник

IA

Igor A in Боль Тимлида
а это уже расчет рисков

если вася сделал N транзакци без подтверждения в полете - заблочить
если вася заходил с разных ип. - заблочить
если вася вывел много денег за день и продолжает - заблочить на всякий случай
источник

IA

Igor A in Боль Тимлида
т.е. как в tcp некое окно доверительное, и его можно крутить в зависимости от контекста шире-уже.
источник

IA

Igor A in Боль Тимлида
я не знаю умное ли это решение, но вот люди сделали. и работает.
источник

ОО

Олег Овсянников... in Боль Тимлида
ну да, это уже RCS
источник

AB

Aleksandr Bespalov in Боль Тимлида
Некоторые еще пишут пару проверок статуса в рамках обработки. Трипл пенет... проверка. Ну, вдруг вначале один был, а к концу обработки (перед финальным выставлением статуса) другой.
источник

IA

Igor A in Боль Тимлида
Я врать не буду. Мне вся эта шляпа не нравится. Код в финтехе очень скучный - из того что попадается. Там интересных решений раз в год…
источник

IA

Igor A in Боль Тимлида
По сравнению с алго торговлей или рекламой - я даже не знаю как сравнить. день и ночь.
источник

AB

Aleksandr Bespalov in Боль Тимлида
Осторожно предположу, что это от авторов зависело. Ну, вот эти все гарантии по факту уровня "помолимся  и перепроверим"
источник

IA

Igor A in Боль Тимлида
*Но это мое оценочное суждение
источник

PD

Phil Delgyado in Боль Тимлида
Ну, мне вот код в финтехе как раз очень нравится, там всегда столько поводов сделать сложное  - простым.
источник

PD

Phil Delgyado in Боль Тимлида
Очень много пространства для "хорошо подумать над предметной областью".
источник