流浪的菜袅 2023-03-02 15:29 采纳率: 79.5%
浏览 21
已结题

nodejs接收上传的图片存放问题

大锅们好
是这样的,项目开发中,涉及到文件资源上传,nodejs接收到资源后,如果将这些资源就存放在项目目录下的某个文件,这样的话,在项目实际上线后,会不会在使用上会有什么影响?或者当项目更新部署后,资源文件会不会受什么影响?
我目前是将上传的资源放到nodejs项目目录下的upload文件,然后将资源路径给到数据库,前端读取。
如果这种存放地址、方式有问题的话,用什么方式更好呢?可以做到不至于资源稍微过多就影响到项目运行速度之类的?
求解,谢谢大锅们

  • 写回答

2条回答 默认 最新

  • 冯! 2023-03-02 15:33
    关注

    将上传的资源存放在项目目录下的某个文件夹中,然后将资源路径保存在数据库中,这是一种常见的做法,但是会有以下问题:

    项目更新部署后,资源文件会丢失。如果您在项目更新时删除了旧文件夹,那么上传的资源文件也会被删除,导致丢失。解决方案是在更新部署前备份好上传的资源文件。

    资源文件较多时,可能会影响项目的运行速度。如果您的资源文件数量很多,或者文件较大,可能会导致在读取、上传或删除资源时会有一定的性能瓶颈。解决方案是使用分布式存储系统(如对象存储)来存储资源文件,以降低对项目性能的影响。

    项目实际上线后,资源文件存放的路径可能需要修改。如果您在实际上线时将项目目录放到不同的位置,那么资源文件的路径也会随之改变,导致前端读取不到资源文件。解决方案是将资源文件的路径保存为相对路径,以保证在项目目录移动时不会受到影响。

    综上所述,为了解决以上问题,建议将上传的资源文件存储在分布式存储系统中,例如使用云存储或对象存储服务,这样可以降低对项目性能的影响,并且可以实现自动备份和数据冗余,保证数据安全。同时,在前端读取资源时,可以使用CDN加速服务,提高资源加载速度,优化用户体验。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月10日
  • 已采纳回答 3月2日
  • 创建了问题 3月2日

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集