推广 热搜: 红书  page  数据  数据分析  关键词  搜索  小红  哪些  考试  论文 

Kratos中使用gin处理excel文件上传与下载并批量往数据库与redis中写入数据

   日期:2024-12-26     移动:https://sicmodule.kub2b.com/mobile/quote/13848.html

在kratos框架中使用gin处理http请求,实现上传固定内容格式的excel文件并将excel中的数据存入MySQL数据库与Redis中。

https://gitee.com/huoyingwhw/kratos-gin

1、设置Content-Type,boundary参数见下面参考文章中的介绍:

2、body中使用form-data上传文件,并且key用“file”,因为项目中使用的方法用“file”这个key获取文件的:

网上有一篇文章探讨了MySQL数据库一次批量插入数据量的问题:https://zhuanlan.zhihu.com/p/514985459

data层关键的批量写入数据库与使用pipeline分批次写入redis的说明:

这里设置的BatchCreateUserSize是,如果列表中有5个用户的话,每次只会写入2条数据,直到写完为止:

~~~

1、上传文件大小限制 限制一次性上传文件的数量 很有必要 之前做项目时 上传投放广告的素材 一次传太多 太的的素材 导致另外一个问题排查 沟通后发现原来是这么回事。  开发的时候注意一下 减少不必要的麻烦

2、数据处理注意:

❗️我们的项目是给产品用的,程序员不能控制产品人员的操作!所以在开发前就要想到使用者可能有哪些厉害的/毁灭性的操作~
(1)数据库数据批量写入的时候限制每次create的数量
(2)如果可能的话,让前端限制一下上传文件的大小~或者后端也可以做一下这个限制~~
(3)使用pipeline一次写入redis的数量也不要过多
(4)使用 on conflict 语句,如果有产品重复上传相同的数据(比如例子中的name与age的组合重复了),这样不会创建新的记录!但是有一个点需要注意,如果表中有软删除的标志比如字段叫is_delete(1表示未删除,2表示已删除),如果一条数据被删了id_delete的标志是2,创建的时候要加上is_delete做重复判断了(name+age+is_delete)!而且没有特殊需求的话,建立联合唯一索引的时候要谨慎!

kratos中使用gin

postman请求文件上传遇到的问题

【http/https】Content-Type的boundary

Kratos中使用gin处理excel文件上传与下载并批量往数据库与redis中写入数据

本文地址:https://sicmodule.kub2b.com/quote/13848.html     企库往 https://sicmodule.kub2b.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


0相关评论
相关最新动态
推荐最新动态
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号