Проект на php. Нужно сделать генератор последовательных чисел, грубо говоря - счетчик. Когда к нему обращаешься - он отдает число. Когда в следующий раз обращаешься - отдает предыдущее число + 1.
Сложность в том, что счетчик должен быть единым для всех php-процессов (как php-fpm процессов, так и cli). То есть к нему могут обращаться срезу несколько процессов. Каждому он должен отдавать новое число.
И должен сохранять состояние (например, в случае перезагрузки сервера).
Работать должен быстро - в секунду к нему будет около 100 запросов.
Понятно, что это задача не совсем для php. Подскажите, как реализовать такое? Есть ли готовое решение?
// setup
$pdo->query("create table counter (id int auto_increment primary key)");
// use
$pdo->query("INSERT INTO counter VALUES (NULL)");
$counter = $pdo->lastInsertId();