论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
软件与程序人生
›
云原生
›
毕设分享 基于异步架构的图片管理体系后端设计和实现( ...
毕设分享 基于异步架构的图片管理体系后端设计和实现(源码+论文) ...
东湖之滨
论坛元老
|
2024-6-11 11:23:02
|
显示全部楼层
|
阅读模式
楼主
主题
1866
|
帖子
1866
|
积分
5602
0 项目说明
基于异步架构的图片管理体系后端设计和实现
提示:适合用于课程设计或结业设计,工作量达标,源码开放
本体系仅向外提供JSON接口,不返回HTML/CSS/JS等可视化数据,相对于经典的MVC架构仅有MC,也就是只有模型层、控制层。
1 项目说明
在互联网、多媒体时代,图片无处不在,云盘算服务商针对图片垂类的支持欠缺,各个企业重复开辟征象严重。图片管理是CPU麋集型、IO麋集型场景,使用同步处理惩罚时延高、流程长,体系高峰期、低峰期负载相差较大,造成资源浪费。
使用异步架构可以大概很好地解决同步场景下的题目,将处理惩罚流程分为核心路径和非核心路径,核心路径使用同步处理惩罚,非核心路径通过消息队列异步化处理惩罚,紧缩处理惩罚流程,降低处理惩罚时延,异步化还能起到削峰的作用。添加、删除、修改非核心路径的处理惩罚,不需改动核心路径代码,增大体系的可维护性和可扩展性。
2 相关技术
异步化是将非核心路径的处理惩罚转移到不同服务实例、不同时间举行处理惩罚,到达提高用户体验,体系削峰、流程优化、提高体系可扩展性的目的。
本体系主要使用的技术有:
NSQ消息队列体系
MySQL关系型数据库体系
HDFS分布式存储体系
Redis缓存体系
Go编程语言
Docker容器管理体系
3 体系设计
3.1 体系功能布局
图片管理体系后端的主要需求:
上传
下载
格式转化
添加水印
查看图片元数据
查看上传汗青
从处理惩罚的请求范例看,可将整个体系划分为三大模块:
写模块
读模块
消耗者模块
写模块处理惩罚需写存储的请求,如上传、删除图片,其处理惩罚核心流程,将非核心流程通过消息队列异步化到消耗者模块处理惩罚。
读模块提供接口供外部调用访问图片的二进制数据和元数据,仅处理惩罚读存储的请求。
消耗者模块异步完成非核心流程处理惩罚,将处理惩罚均匀打散到不同时间、不同呆板上处理惩罚,异步化到达降低处理惩罚时延、负载均衡、削峰的目的。
3.2 设计模式
本体系夸大异步架构,异步通过消息队列实现,将非核心处理惩罚步调异步化到不同时间、不同呆板上做处理惩罚。因为采用消息队列,所以选择生产者消耗者模式举行处理惩罚。
为了在开辟前期中测试阶段满足测试需要,在还没接入HDFS分布式存储时,将图片简单地存储在本地文件体系中,方便后续替换不需要修改大量的代码,采用面向接口编程,对于每个实现独立测试。在后续实现中需替换分布式存储时,可将代码改动降低到最小。如需将本地存储替换为HDFS、HDFS替换为Ceph。
开辟中采用Go语言保举的实践,使用组合模式而不是集成模式。
因为WebHdfs中采用Restful HTTP协议交互,如果每个请求编程中都使用重复代码拼接HTTP请求,不但代码复用率低,而且容易堕落。将WebHdfs交互部门使用适配器模式举行抽离。到达每次只需调用适配器的代码,即可以大概访问WebHdfs的目的。
4 论文概览
5 项目工程
**项目分享: ** https://gitee.com/asoonis/htw
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
东湖之滨
论坛元老
这个人很懒什么都没写!
楼主热帖
《HarmonyOS开发 - 小凌派-RK2206开发 ...
dotnet 6 为什么网络请求不跟随系统网 ...
大二C#实现酒店管理系统(C端展示、前 ...
VMware虚拟机安装黑群晖7.1
从0到1实现一套CICD流程之CD
当我们在聊「开源大数据调度系统Taier ...
ABP Framework 7.0 RC 新增功能简介 ...
RequestDispatcher具有什么功能呢? ...
MySQL视图
测试大姐提了个bug,为什么你多了个opti ...
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
浏览过的版块
Java
人工智能
快速回复
返回顶部
返回列表