2016-11-18 105 views
0

我正在使用laravel中的缓存驱动程序缓存一些eloquent/api调用结果。使用laravel在缓存/ redis中存储大型结果集5

我得到+/- 4000行的结果,每个键20个。这是一个相当大的json字符串。现在我把它直接抛向缓存驱动,这可能不是实现这一点的最佳方式。每次进行api调用都会更快。但从缓存中加载仍然需要5-6秒。在网络标签中查看结果约为12 MB。

在我的本地机器上,这工作正常。在我的heroku环境中,redis最大化了内存使用。

所以问题是,将缓存驱动程序存储在redis中的好方法是什么?

回答

0

由于数据非常大,因此您应该使用压缩库,例如, zlib,在保存到Redis之前压缩数据。这会减少存储在Redis中的数据的大小。它还可以减少从Redis写入/读取时的网络延迟。