Мне интересно, как лучше всего использовать Redis NoSQL Database в CakePHP не для кэширования, а как обычное хранилище ключей / значений?
Существует плагин для Redis 2.4.2 или выше, но плагин не работает с CakePHP 3.x: Redis CakePHP 2.4.2 Плагин
Как лучше всего использовать Redis в CakePHP 3 в качестве обычной базы данных ключей / значений? Насколько дорого обновление плагина CakePHP 2.4.2 Redis до плагина CakePHP 3.x. Является ли миграция плагина лучшим способом или лучше создать новый источник данных? (Текущий плагин Redis расширяет класс Datasource.)
Внимательно посмотрите на то, что делает этот источник данных, это в значительной степени просто прокси для Redis
экземпляр класса, кроме того, что он обрабатывает только подключение и отключение.
Таким образом, помимо использования функции автоматического подключения / отключения, практически нет никакого смысла в реализации такого источника данных, и вы также можете просто использовать Redis
прямо вместо.
https://github.com/phpredis/phpredis#classes-and-methods
Если вы хотите использовать его как источник данных, то есть иметь его доступны через менеджер соединений, тогда вам придется реализовать \Cake\Datasource\ConnectionInterface
.
Если вы ищете источник данных, который действует как ORM, это совсем другая история и довольно сложная задача, см., Например, плагин CakePHP ElasticSearch Datasource.
Других решений пока нет …