如何在Redis中正确存储图像?
决定在Redis中存储图片,如何正确操作?现在我这样做:
$redis->set('image_path', 'here is the base64 image code');
我不确定这是否正常。
回答
在 Redis 中存储图像是完全可以的。Redis 键和值都是二进制安全的
Redis 字符串是二进制安全的,这意味着 Redis 字符串可以包含任何类型的数据,例如 JPEG 图像或序列化的 Ruby 对象。
字符串值的最大长度为 512 兆字节。
请参阅数据类型
您可以将图像存储为二进制而不是 base64,这样会更有效率:
- Redis 服务器上的 RAM 内存使用情况
- 在网络使用中
- 在计算 (CPU) 使用中,假设您将二进制图像传递给最终客户端
你可以做
$client->set('profile_picture', file_get_contents("profile.png"));
请参阅在 Redis 中存储二进制数据