Дописи
avatar

Ви відправляєте транзакцію, вона підтверджується, але ваш гаманець все ще показує старий баланс. Оновлюєте — з’являється. Оновлюєте знову — зникає. Нічого не зламалося. Ви просто потрапили на іншу репліку, яка ще не встигла оновитися. Rialo опублікував керівництво з моделей послідовності, яке точно пояснює це явище — і це пояснення корисніше, ніж більшість порад щодо UX гаманців. Розподілені системи реплікують дані між серверами, і ці сервери отримують оновлення в різний час. Запит на читання, що потрапляє на відстаючу репліку, повертає старіший зафіксований стан. Це правильна поведінка за більшістю моделей послідовності, але дуже заплутує користувача. Розв’язок має назву: читай свої записи. Після того як клієнт зафіксував запис у сесії, кожен наступний запит на читання в цій сесії має відображати цей запис. Ви завжди бачите свою транзакцію, навіть якщо інші користувачі ще ні. У поєднанні з монотонним читанням ваше представлення рухається лише вперед, тому баланс ніколи не повертається назад під час сесії. У документації @RialoHQ це зазначено як функція, яку гаманці повинні реалізовувати на рівні додатка, а також окремо зазначено, яка модель підходить для кожної частини ланцюга: сильна послідовність для контрольних точок фінальності; послідовний префікс для упорядкування блоків під час синхронізації; обмежена застарілість для легких клієнтів. Більшість ланцюгів не документують послідовність і залишають розробникам виявляти її через звіти про помилки. Записування того, які гарантії стосуються яких частин — це непримітна робота, яка збереге комусь тиждень часу на пошуки проблеми, яка навряд чи була помилкою.

Цей контент призначений виключно для інформаційних та освітніх цілей. Він може містити думки третіх осіб, спонсорований контент або рекламні матеріали, за які автор може отримувати оплату. Жодна інформація в цій стрічці не є інвестиційною порадою чи гарантією прибутковості. Ви несете повну відповідальність за власні інвестиційні рішення. Перед початком торгівлі завжди проводьте власне дослідження та дотримуйтесь обережності. Ми не гарантуємо точність інформації від третіх осіб і не несемо відповідальності за будь-які збитки. Минулі результати не є показником майбутніх. Дивіться наші Умови спільноти та Заяву про ризики для отримання детальної інформації.

avatarОпублікуйте відповідь

Коментувати