java - 在后端存储,比如多媒体文件(音频,视频,图像)是如何存储的?
PHP中文网
PHP中文网 2017-04-18 10:36:51
0
2
787
PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
巴扎黑

至少有两种方法:

方法一

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

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

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

方法二

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

再扯远点:

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

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

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

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

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!