专栏名称: 数据分析与开发
伯乐在线旗下账号,分享数据库相关技术文章、教程和工具,另外还包括数据库相关的工作。偶尔也谈谈程序员人生 :)
目录
相关文章推荐
今天看啥  ›  专栏  ›  数据分析与开发

多人同时导出 Excel 干崩服务器!新来的阿里大佬给出的解决方案太优雅了!

数据分析与开发  · 公众号  · 数据库  · 2024-08-13 11:50

主要观点总结



关键观点总结



文章预览

作者:Lxlxxx https://juejin.cn/post/7259249904777838629 业务诉求:考虑到数据库数据日渐增多,导出会有全量数据的导出,多人同时导出可以会对服务性能造成影响,导出涉及到mysql查询的io操作,还涉及文件输入、输出流的io操作,所以对服务器的性能会影响的比较大;结合以上原因,对导出操作进行排队; 刚开始拿到这个需求,第一时间想到就是需要维护一个FIFO先进先出的队列,给定队列一个固定size,在队列里面的人进行排队进行数据导出,导出完成后立马出队列,下一个排队的人进行操作; 还考虑到异步,可能还需要建个文件导出表,主要记录文件的导出情况,文件的存放地址,用户根据文件列表情况下载导出文件。 业务关系定义 分别是用户、导出队列、导出执行方法 ExportQueue:  维护一条定长队列,可以获取队列里前后排队的用户,提供查询, ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览