搜索

首页  >  问答  >  正文

java - 在后端存储,比如多媒体文件(音频,视频,图像)是如何存储的?

PHP中文网PHP中文网2807 天前843

全部回复(2)我来回复

  • 巴扎黑

    巴扎黑2017-04-18 10:38:51

    至少有两种方法:

    方法一

    就是你提到的存储在数据库中,但是没听过也没见过谁真这么干过
    不这么做的原因至少有如下两点:

    • 比如一张图片1M左右,多了导致数据库文件体积急剧膨胀

    • 数据的体积大了,查询的时候加载出来也会很慢很慢

    方法二

    文件像普通文件一样放在磁盘上,数据库中记录文件在文件系统中的路径磁盘上,数据库中记录文件在文件系统中的路径
    读取文件的时候,先从数据库读取文件在磁盘上的位置,然后服务器(nginxtomcat读取文件的时候,先从数据库读取文件在磁盘上的位置,然后服务器(nginxtomcat等皆可)将文件回送给客户端。

    再扯远点:

    对于方法二来说,文件往往是放在专门的静态文件服务器上,做动静分离,感兴趣的话可以搜搜关键字:nginx反向代理

    比如可以用nginxapache来专门处理静态文件(图片,视频等)。nginxapache来专门处理静态文件(图片,视频等)。
    对于那些实在没办法静态化的请求就由tomcat对于那些实在没办法静态化的请求就由tomcat等动态处理并回送客户端。

    回复
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:38:51

    • 存自己的服务器上面 自己做文件分布式储存,高可用什么的

    • 调用第三方接口,比如又拍云或者阿里云OSS,不用自己运维

    回复
    0
  • 取消回复