Redis Connection Management для нескольких случайных запросов - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть сценарий php, где я должен выполнять несколько случайных запросов. Итак, мне было интересно, что может быть лучшим способом для подключения и выполнения запросов redis.

1 Способ, подключить один раз, сохранить подключение активным и выполнить все запросы от начала до конца сценария, а затем закрыть подключение

//Request comes and some work is done on the request like validation etc
//then
$redis = new Redis()->pconnect();   
$redis->hMSet();

//Some other codes are run like sending email or similar <-Long Codes
//then
$redis->hSet();

//If everything was good send updates to other users <-Long Codes
//then
$redis->setBit();

//Some More Work <-Long Codes
//then
$redis->hGet();
$redis->close();

2 Способ, создайте соединение для каждой операции Redis и закройте и повторите для каждой операции

//Request comes and some work is done on the request like validation etc
//then
$redis = new Redis()->pconnect();   
$redis->hMSet();
$redis->close();

//Some other codes are run like sending email or similar <-Long Codes
//then
$redis = new Redis()->pconnect();   
$redis->hSet();
$redis->close();

//If everything was good send updates to other users <-Long Codes
//then
$redis = new Redis()->pconnect();   
$redis->setBit();
$redis->close();

//Some More Work <-Long Codes
//then
$redis = new Redis()->pconnect();   
$redis->hGet();
$redis->close();

1-й кажется лучшим, но я подумал, может ли плохая практика сохранять соединение живо при запуске других кодов. И все потому, что Redis эффективно обрабатывает миллионы запросов в секунду, и моя любая ошибка может не привести к каким-либо радикальным результатам. Я читал, что создание соединения является ресурсоемким, но все же я хотел быть уверен в лучшем способе.

...