【发布时间】:2021-06-28 04:43:33
【问题描述】:
大家好,
有没有办法在 Laravel 中临时缓存 BLOB 类型?
场景:
我将暂时缓存一些大小为 2048KB 的数据MEDIUMBLOB。
这些数据实际上是一个 16MB 的大型单个文件的一部分。
缓存所有部分后,将它们组合成一个文件,然后从缓存中删除。
每个单独部分的内容由file_get_contents函数给出。
我已经在使用MySQL 进行此操作。 (但是,有很多查询并且需要时间来完成。)
有没有更好的方法将MEDIUMBLOB数据临时存储在缓存存储中?
我在 Laravel 中遇到过 Redis 和 Cache,但我不确定它们是否支持 MEDIUMBLOB。
【问题讨论】:
-
是的,redis 支持这个用例,但是你的问题听起来像 XY problem 可能有助于提供更多上下文,因为我怀疑有更好的方法来做你需要的事情
-
@apokryfos 感谢您的回答。那么我可以信任 Redis 来处理这些数据吗? Redis中存储数据的数据类型是什么?
-
这将是一个简单的键值对,基本上
Cache::put('key', $data);任何缓存驱动程序都应该工作,而不仅仅是 redis。然后,当您想删除数据时,您可以调用Cache::forget('key')(或按照here 的说明设置过期时间,以免担心删除项目) -
@apokryfos 你救了我!据我了解,数据类型是什么并不重要。
file_get_contents函数将内容作为字符串获取,对吗?这才是重点。非常感谢你帮助我。我不确定这个问题是否有用(如果没有,我会删除它!)。
标签: php mysql database laravel caching