为什么在AWS Instance上从Redis获取数据的速度非常慢

时间:2016-01-09 23:04:21

标签: php ubuntu amazon-web-services redis

首先,我使用以下链接在本地计算机(Ubuntu 14.04)上安装了redis。

https://www.digitalocean.com/community/tutorials/how-to-install-and-use-redis https://www.digitalocean.com/community/tutorials/how-to-set-up-a-redis-server-as-a-session-handler-for-php-on-ubuntu-14-04

我使用哈希来在redis中存储数据。当存在数据库命中时,查询花费大约300毫秒,当从redis获取时花费60-70毫秒。在那之后我在我的ubuntu AMI上做同样的事情,那是m4大,但不幸的是我没有看到响应时间的任何变化,有时它比db命中花了更多的时间。我不知道我失踪的地方。

    $this->redis = New \Redis();
    $this->redis->connect('127.0.0.1', 6379);
    $this->redis-hset($id, $key, serialize($result));
    if($this->redis->hexists($id,$key)) {
         return $this->redis->hget($id, $key);
    }

我确信它在redis中可用时从redis中获取数据。

2 个答案:

答案 0 :(得分:1)

我建议尝试另一种实例类型。 m4.large只是一个2核实例类型,可能尝试4核?或者使用AWS弹性缓存redis服务。

也可以找到一些有用的信息here

答案 1 :(得分:0)

基准序列化时间 - 对于更复杂的数据序列化/反序列化比实际写入redis要长得多。 (查看http://kiss-web.blogspot.com/2016/02/memcached-vs-redisphpredis-vs-predis-vs.html