Page 1 of 1

How to setup redis cache in Opencart 2.3

Posted: Tue Jul 25, 2017 6:40 am
by akvriksha15
Hi,
There is a Redis cache driver in Opencart 2.3
system/library/cache/redis.php

<?php
namespace Cache;
class Redis {
private $expire;
private $cache;
public function __construct($expire) {
$this->expire = $expire;
$this->cache = new \Redis();
$this->cache->pconnect(CACHE_HOSTNAME, CACHE_PORT);
}
public function get($key) {
$data = $this->cache->get(CACHE_PREFIX . $key);
return json_decode($data, true);
}
public function set($key,$value) {
$status = $this->cache->set(CACHE_PREFIX . $key,
json_encode($value));
if($status){
$this->cache->setTimeout(CACHE_PREFIX . $key, $this->expire);
}
return $status;
}
public function delete($key) {
$this->cache->delete(CACHE_PREFIX . $key);
}
}



I putted the following in /config.php

// CACHE
define('CACHE_DRIVER', 'redis');
define('REDIS_HOSTNAME', 'localhost');
define('REDIS_PORT', '6379');
define('CACHE_PREFIX', 'oc_');

it's showing error

Fatal error: Uncaught Error: Class 'Redis' not found in /system/library/cache/redis.php:8 Stack trace: #0 /system/library/cache.php(9): Cache\Redis->__construct(3600) #1 /system/framework.php(49): Cache->__construct('redis', 3600) #2 /system/startup.php(124): require_once('/home/system/...') #3 /public_html/index.php(19): start('catalog') #4 {main} thrown in /system/library/cache/redis.php on line 8


Any idea what's wrong ? :bash: Redis is already installed on server and its running fine.

Re: How to setup redis cache in Opencart 2.3

Posted: Tue Jul 25, 2017 4:50 pm
by daveyoi
There is not much detail in the commit that added this cache, but looking at the code I would assume you need the Predis PHP extension installed to make this work.

https://github.com/phpredis/phpredis

Re: How to setup redis cache in Opencart 2.3

Posted: Tue Jul 25, 2017 5:15 pm
by akvriksha15
I see the same redis file is here : https://github.com/opencart/opencart/co ... ba33117a72

Also one thing I forgot to mention after changing the /config.php changed the cache driver in / System / config / default.php
// Cache
$_['cache_type'] = 'redis'; // apc, file or mem
$_['cache_expire'] = 3600;}

But the error is same

Re: How to setup redis cache in Opencart 2.3

Posted: Tue Jul 25, 2017 5:31 pm
by akvriksha15
daveyoi wrote:
Tue Jul 25, 2017 4:50 pm
There is not much detail in the commit that added this cache, but looking at the code I would assume you need the Predis PHP extension installed to make this work.

https://github.com/phpredis/phpredis
Hi,
PHP redis is already installed as i said earlier redis is working fine on the server

Re: How to setup redis cache in Opencart 2.3

Posted: Thu Jul 27, 2017 5:23 am
by akvriksha15
Any Help ?

Re: How to setup redis cache in Opencart 2.3

Posted: Sat Sep 09, 2017 4:17 pm
by amclub
I also want to know it.
Anybody had installed redis and work fine in opencart version 2.3.0.2?

Re: How to setup redis cache in Opencart 2.3

Posted: Thu Sep 14, 2017 6:51 pm
by webcorvo
amclub wrote:
Sat Sep 09, 2017 4:17 pm
I also want to know it.
Anybody had installed redis and work fine in opencart version 2.3.0.2?
Yes version 2.3.0.2 works fine

Re: How to setup redis cache in Opencart 2.3

Posted: Sun Nov 21, 2021 2:45 pm
by dic76
Hi, i want uninstall or deactivate redis in my website. How to?