Я хотел бы использовать rocksdb для моего php mysql веб-приложения. Я построил расширение php для rocksdb и пытаюсь использовать его в простой программе. Но то, что я вижу, когда я получаю доступ к php-скрипту с двух компьютеров, иногда он говорит: блокировка: Временно нет доступных ресурсов.
При поиске этой ошибки я обнаружил, что пытаюсь открыть rockdb в одном и том же каталоге из двух отдельных процессов, в которых я столкнулся с этой проблемой. Но в типичном веб-приложении это происходит, когда один и тот же скрипт выполняется несколькими пользователями одновременно.
Могу ли я использовать такие рок-файлы?
В основном я хочу использовать его в качестве кэша веб-приложения. Поэтому, когда данные доступны в кеше, приложение будет возвращаться из кеша, а если не доступно в кеше, помещать в кеш.
Я наконец-то понял, что если я использую rockdb с расширением php, то при каждом php-запросе он открывает rockdb. Вместо этого следует создать какой-нибудь работающий сервис, который будет держать открытую скалу и предоставлять данные, когда моя php-программа понадобится.
Экономия решает мою проблему.
Этот пост и комментарии помогли мне.
https://engineering.wingify.com/posts/fast-storage-with-rocksdb/
Других решений пока нет …