

Якщо ви хоча б раз проводили криптотранзакцію, ви могли помітити, що система здійснює операцію із затримкою. Коли транзакція вже ініційована, але ще не проведена, вона знаходиться у так званому мемпулі.
Мемпул — це цифрова "кімната очікування", яка знаходиться на ноді (мережевому вузлі) блокчейну. У цьому цифровому просторі зберігаються транзакції, які вже ініціювали, але не встигли обробити. Термін походить від англійських слів "memory" (пам'ять) та "pool" (пул, загальний фонд). Поєднання слів — відсилання до призначення цифрового простору, що використовується для зберігання черги транзакцій, які потрібно додати до блокчейну.
Мемпули є у всіх блокчейнах, просто в деяких вони названі по-іншому. Наприклад, мемпул блокчейн-проєкту Parity називають "черга транзакцій" (Transaction Queue). Це не змінює суті механізму, але демонструє різні підходи до термінології в екосистемі криптовалют.
Кожна транзакція, додана до мемпулу, являє собою частину даних розміром не більше кількох кілобайт (КБ). Сума всіх КБ, що становлять транзакції, визначає розмір мемпулу.
Великий розмір мемпулу свідчить про наявність безлічі транзакцій, що очікують підтвердження. Це важливий індикатор завантаженості мережі, який дозволяє користувачам оцінити, наскільки швидко буде оброблена їхня транзакція.
На графіках активності видно, що розмір мемпулу біткоїна часто зростає на тлі активного руху курсу криптовалюти — зростання або падіння. Це пояснюється тим, що під час значних цінових коливань користувачі активніше переміщують свої активи, намагаючись зафіксувати прибуток або мінімізувати збитки.
Ноди можуть встановлювати обмеження за розмірами для свого мемпулу. Перевищення порогу може призвести до введення мінімальної комісії для проведення операції. Це механізм захисту, який запобігає перевантаженню системи та забезпечує стабільну роботу мережі.
Мемпули відіграють важливу роль у схемі роботи нод блокчейну. Для запису транзакції у блокчейн потрібно, щоб її спочатку додали до блоку (складової блокчейну). Не всі ноди блокчейну можуть створювати блоки.
Наприклад, у блокчейн-системах, які працюють на базі алгоритму Proof-of-Work — таких, як біткоїн, тільки майнери мають право додавати транзакції до блоку. Вони витрачають обчислювальну потужність на вирішення складних математичних задач, і в разі успіху отримують право сформувати новий блок.
У блокчейн-системах на базі Proof-of-Stake — таких, як Ethereum, додаванням транзакцій до блоку зайняті валідатори. Вони блокують певну кількість криптовалюти як заставу та отримують право підтверджувати транзакції пропорційно своєму стейку.
Після створення транзакції користувач змушений чекати, поки валідатор або майнер схвалить її для подальшого додавання до блоку, з подальшим записом у блокчейн. Процес не відбувається миттєво через необхідність перевірки та досягнення консенсусу в мережі. Весь той час, поки транзакція чекає перевірки, включення до блоку та запису у блокчейн, вона знаходиться у тому самому мемпулі.
Для початку уточнимо, що в одного блокчейну може бути безліч мемпулів. У кожної ноди є цифровий простір, відведений під зберігання транзакцій, які очікують перевірки та додавання до блокчейну. Усі мемпули блокчейну, розподілені по приватних нодах, разом становлять один великий колективний мемпул.
Ця децентралізована структура забезпечує надійність системи: навіть якщо частина нод вийде з ладу, інформація про транзакції збережеться на інших вузлах мережі.
У момент, коли користувач створює транзакцію, він відправляє її на ноду. Мережевий вузол додає операцію до свого мемпулу та ставить її в чергу на валідацію (перевірку на коректність даних). Валідація включає перевірку цифрового підпису, наявності достатньої кількості коштів на балансі відправника та відповідності формату транзакції протоколу блокчейну.
Після того, як транзакція проходить валідацію, її переводять у статус очікування. Саме такі операції майнери та валідатори можуть додавати до нових блоків, щоб надалі приєднати їх до блокчейну.
У момент, коли транзакцію приєднано до блокчейну, ноди отримують інформацію про це. Тепер мережеві вузли можуть стерти непотрібну інформацію про операцію зі своєї "кімнати очікування". Так і відбувається синхронізація мемпулів між різними нодами мережі.
Щоб проілюструвати роботу мемпулу та життєвий цикл транзакції, уявімо, що ви хочете відправити 0.01 BTC своєму другу.
Для початку потрібно дізнатися адресу гаманця для криптовалют, яким користується ваш друг. Його потрібно вказати як адресу одержувача при ініціюванні транзакції. Також може знадобитися згода на вказану системою комісію за переказ. Фінальний етап — натиснути клавішу "відправити".
Транзакція буде додана до найближчого мемпулу та позначена як операція в черзі на проведення. На цьому етапі вона ще не є частиною блокчейну, але вже зафіксована в системі.
Тепер транзакцію транслюватимуть іншим нодам мережі, щоб мережеві вузли змогли перевірити її та переконатися, що переказ не порушує правил. Цей процес забезпечує децентралізовану валідацію без необхідності довіряти одному центральному органу.
У разі, якщо транзакція пройде перевірку нодами, її переведуть із загальної черги до групи очікування (на додавання до блоку, з подальшим записом у блокчейн). Якщо ж з операцією щось не так, користувач отримає повідомлення про те, що ця транзакція не підтверджена.
Один із майнерів або валідаторів додасть транзакцію до нового блоку та запише його у блокчейн. Вибір транзакцій для включення до блоку часто залежить від розміру комісії.
Тепер майнер або валідатор, який додав транзакцію до блоку та записав її у блокчейн, почне транслювати інформацію про блок нодам. Як результат, мережеві вузли отримають доступ до інформації про транзакції, які включили до блоку.
На цьому етапі ноди можуть стерти інформацію про вашу транзакцію, яка весь цей час зберігалася у мемпулі. Це звільняє місце для нових транзакцій.
Готово! Переказ завершено — ваш друг отримав належні йому 0.01 BTC, і ця операція назавжди зафіксована в незмінному реєстрі блокчейну.
Перевантаження в мемпулі виникає в періоди, коли обсяг запитаних операцій перевищує кількість транзакцій, які можуть поміститися в один блок. Це явище може значно уповільнити обробку транзакцій та підвищити комісії.
Ось кілька факторів, які можуть стати причиною уповільнення роботи мемпулу:
Перевантаження мережі. Збільшення кількості транзакцій призводить до нестачі місця в блоках, що стає причиною перевантаження мемпулу. Наприклад, середня кількість транзакцій в одному блоці блокчейну біткоїна становить близько 3150. Якщо кількість транзакцій, що очікують, значно перевищить це число протягом кількох годин, мережа, а слідом за нею і мемпули, будуть перевантажені. У такі періоди користувачі змушені або чекати довше, або платити вищі комісії.
Події або новини. Події та новини, що безпосередньо впливають на блокчейн-індустрію, такі як запуск токенів, аірдропи або підтримка криптоіндустрії знаменитостями, можуть викликати раптові сплески попиту на транзакції. Стрибки активності здатні призводити до перевантажень мемпулу. Історично такі ситуації спостерігалися під час запуску популярних NFT-колекцій або під час різких цінових рухів.
Форки або оновлення мережі. Зміни мережі, такі як форки або оновлення блокчейну, можуть викликати миттєве перевантаження мемпулу. Причина в тому, що ноди будуть зайняті оновленнями, і їхня здатність обробляти нові транзакції тимчасово знижується. Крім того, користувачі можуть поспішати провести транзакції до або після оновлення, що додатково збільшує навантаження.
Одним із основних факторів, що визначають порядок виконання транзакцій у мемпулі, є комісії. Майнери та валідатори можуть вибирати, які транзакції вони хочуть додати до нового блоку, керуючись обсягом потенційного прибутку. Простіше кажучи, чим більше комісії користувач готовий заплатити за проведення операції — тим швидше її проведуть.
Цей механізм створює ринок комісій, де користувачі фактично конкурують за місце в наступному блоці. Під час перевантаження мережі комісії можуть зростати в десятки разів порівняно зі звичайними періодами.
Тому відповідь на питання про те, скільки чекати підтвердження транзакції біткоїна, залежить від рівня навантаження мемпулу та щедрості комісій. Чим нижче навантаження та вища плата — тим швидше пройде операція. Перевантаження мемпулу та низька комісія — навпаки, можуть стати причиною уповільнення підтвердження транзакції біткоїна або будь-якої іншої криптовалюти.
Деякі гаманці пропонують функції динамічного розрахунку комісій, які аналізують поточний стан мемпулу та рекомендують оптимальний розмір плати для швидкого підтвердження транзакції. Користувачі також можуть відстежувати стан мемпулу через спеціалізовані сервіси моніторингу блокчейну, щоб вибрати найкращий час для проведення операцій.
Мемпул - це тимчасове сховище непідтверджених транзакцій. Він накопичує транзакції перед їх включенням у блок, забезпечуючи впорядкований обіг коштів та оптимізацію мережі. Мемпул критичний для стабільної роботи блокчейну.
Транзакції розповсюджуються по мережі вузлами та потрапляють до мемпулу в очікуванні. Майнери верифікують їх за комісією та додають до блокчейну в порядку пріоритету.
Великий мемпул створює конкуренцію між транзакціями. Майнери обирають транзакції з вищими комісіями, оскільки комісії — це їхня винагорода. Більше чекаючих транзакцій означає вищі комісії для пріоритетної обробки.
Транзакція залишається в мемпулі до включення в блок. Якщо не включена, вона може залишатися 1-2 години, потім видаляється. Невключені транзакції не повертають кошти автоматично.
Мемпул — це пул очікуючих транзакцій перед включенням у блокчейн. Блокчейн — це остаточний реєстр підтверджених транзакцій. Мемпул — тимчасовий простір, блокчейн — постійне сховище даних.
Використайте хеш транзакції на блокчейн-блокері. Там ви побачите статус, кількість підтверджень і позицію в черзі. Якщо немає підтверджень — транзакція ще чекає на обробку мережею.











