以图搜图架构初稿




一、图片集离线增量
1、获取近一个月的新款,每个货号获取前5张图片,
2、对其进行裁剪拼接图片地址(按最大900比例裁剪,使用存储地址,不使用CDN)如: http://obkxpgodc.bkt.clouddn.com/2018/07/12/5b470992afc17.JPG ?imageView2/2/h/900/format/jpg/q/75/
3、保存到数据库
4、跑脚本,分批将数据从七牛云拉取下来
5、分批批量上传到OSS(华东区)
6、上传完毕后,批量生成meta文件,
7、使用离线增量,将数据提交到图像搜索引擎中



二、图片集实时增量
1、编辑图片库时,先将图片上传到OSS(华南区)/七牛云

2、API服务器定时从MySQL中获取图片地址,进行裁剪拼接地址,拉取指定格式图片
3、通过阿里云SDK上传到图像搜索引擎中


三、用户使用图片搜索
1、用户请求场景
1.1、第一次图片搜索:
1.1.1、压缩图片,300像素<宽、高<900像素
1.1.2 、提交到API服务器,获取名称(md5图片信息),API服务器先提交pic到OSS(华南)/七牛云
1.1.3、调用图像分析接口、获取返回数据
1.1.4、图片名称+分类、商品信息集,缓存到redis中,期限1天
1.1.5、返回商品列表+图片名称(pic_path)


1.2、选择分类+pic_path:
1.2.1、pic_path+分类,获取缓存,如果缓存有数据,直接返回
1.2.2、缓存不存在,先下载到API服务器
1.2.3、调用图像分析接口、获取返回数据
1.2.4、图片名称+分类、商品信息集,缓存到redis中,期限1天
1.2.5、返回商品列表


1.3、货号搜索:
1.3.1、根据货号,获取缓存,如果缓存有数据,直接返回
1.3.2、缓存不存在,使用url,拼接裁剪得到pic_path,先下载图片到API服务器
1.3.3、调用图像分析接口、获取返回数据
1.3.4、货号、商品信息集,缓存到redis中,期限1天
1.3.5、返回商品列表

注:场景1方案待优化:
1、客户端图片上传,选择第三方,不走API服务器




2、移动端上传架构

四、OSS迁移
1、获取近几个月的商品库图片地址字段,分割成单个图片地址,保存到测试站MySQL中
2、使用PC,分批下载七牛云图片(不使用CDN),上传到OSS(华南区)中


猜你喜欢

转载自blog.csdn.net/xiaochen1999/article/details/81036489