我实现了一种后端功能,可以上传CSV或excel文件,然后服务器(Django API)将读取所有数据并将其保存到数据库中,但我觉得这不是最好的方法,因此我想获得有关此的建议。
我看不到为什么服务器需要读取并验证CSV文件的原因,而客户端(Angular应用)却可以执行该工作。客户端可以读取验证文件,然后将数据发送到服务器。
然后,服务器将完成剩下的工作,以将数据保存到数据库中。但是我想到了,假设文件包含一百万个条目,这意味着服务器端点将添加一百万个项目。这将导致性能问题。处理此问题的最佳方法是什么?
我实现了一个Angular / Python应用程序,该程序可以处理大型Excel文件,即使有多个工作表也是如此,最好的方法是让客户端将文件上传到服务器,然后服务器完成其余的工作。
处理可能要花费很多时间,因此您可能需要将文件保存到一个临时位置,然后作为作业进行异步处理。该作业将读取您的文件,处理每一行并将数据保存到数据库。(可选)它还可以将进度和作业状态保存到数据库中,因此,您甚至可以让客户端在给定作业ID的情况下跟踪处理进度。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句