决定在Redis中存储图片,如何正确操作?现在我这样做:
$redis->set('image_path', 'here is the base64 image code');
Run Code Online (Sandbox Code Playgroud)
我不确定这是否正常。
在 Redis 中存储图像是完全可以的。Redis 键和值都是二进制安全的
Redis 字符串是二进制安全的,这意味着 Redis 字符串可以包含任何类型的数据,例如 JPEG 图像或序列化的 Ruby 对象。
字符串值的最大长度为 512 兆字节。
请参阅数据类型
您可以将图像存储为二进制而不是 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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2141 次 |
| 最近记录: |