决定将图像存储在Redis中,如何正确执行?现在我这样做:
$redis->set('image_path', 'here is the base64 image code');
我不确定这是否正常。
将图片存储在Valkey/Redis中是完全可以的。键和值都是二进制安全的
字符串是二进制安全的,这意味着字符串可以 包含任何类型的数据,例如 JPEG 图像或序列化的 红宝石对象。
字符串值的最大长度为 512 MB。
您可以将图像存储为二进制而不是base64,这样会更高效:
你可以做
$client->set('profile_picture', file_get_contents("profile.png"));
这是我将图像文件存储到 Redis 数据库并检索它们的简单示例
from PIL import Image
import redis
from io import BytesIO
output = BytesIO()
im = Image.open("/home/user/im.jpg")
im.save(output, format=im.format)
r = redis.StrictRedis(host='localhost', port= 6379, db =0)
r.set('imgdata', output.getvalue())
output.close()
r.save #redis-cli --raw get 'imgdata' >test.jpg