光影绘画

我要开发同款
proginn22070046172024年06月12日
37阅读
开发技术redis、mybatis、spring、springmvc、java
所属分类Web框架

作品详情

技术选型:SpringBoot、Dubbo、Zookeeper、MybatisPlus、sqlserver、Redis、阿里云翻译、七牛云、钉钉机械人、Midjourney、Stable Diffusion。
项目描述:此项目的背景是基于23年的ai突然崛起,当时Midjourney只有网页版,不放方便用户操作,而我们公司就开发了一款手机端的光影绘画,其底层还是基于Midjourney和Stable Diffusion实现的,一个脚本程序从redis中拿到生成图片的咒语生成图片存取七牛云后将图片地址放入redis另外一个队列中,然后一个定时任务消费这个队列的数据将得到的图片地址入库,此项目中包括App端和管理后台。
职责描述:
 因为Midjourney接受的咒语是英文,使用了阿里云翻译服务将中文翻译成英文然后将咒语放入redis队列中,这里的redis当做消息队列使用。
 对一些公共不常变换的数据,通过redis进行缓存,对一些常见的redis缓存容易出现的问题也有具有一定解决的能力。
 使用zookeeper作为注册中心,通过Dubbo进行rpc远程调用,访问数数、归因等平台。
 使用二级制运算,解决一个字段判断四个增强按钮是否已经增强过。
 通过RestTemplate发送http请求Stable Diffusion得到图片以及生产图片的进度百分比。
 将Redis作为消息队列,当用户发送生产图片的咒语时,将咒语存放至redi队列中,同时一个定义任务定时从redis中获取对应的图片地址,回填到数据库中。
 因为公司产品涉及多中用户的登录,使用策略模式降低代码中的判断,从而实现高可扩展性。
 项目使用JWT和AOP实现简单的鉴权功能,粗略放置软件被非法请求频繁访问。
 后期更改架构,通过github上面的开源项目,自己写个中转服务将生成的图片id精确返回,实现图片更加准确的返回到对应的咒语。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论