java 图片上传,图片上传是上传到哪里比较好?服务器上?还是数据库?

java 图片上传,图片上传是上传到哪里比较好?服务器上?还是数据库?,第1张

上传到服务器上会比较好,数据库可以记录一些必要的信息,比如文件的名称,类型(扩展名),大小,创建时间及谁的文件等等;如果把文件放入数据库,读写性能不如文件系统,还会加大数据库的压力。放到服务器上注意要设计好一个文件结构,不然以后一个文件夹里有成千上万个文件,打开那个文件夹就要好久,更不用说查找和下载了。

服务器,尤其是目前越来越大
分辨率越来越高
如果以二进制存在服务器,那服务器读写性能以及开销就太大了
一般都是存在服务器,或者可以考虑利用nginx搭建一套专门的服务器
希望能帮助到你

一般有两种情况,
一种是前端开发需要显示的,这个是页面构成必须的元素,一般这些会做 动静分离,后台接口 跟 前端资源会部署在不同的服务器上,有不同的优化,一般会有转发的服务器,判断是后台接口,就转发到后台的服务器,如果是前端资源,就转发到前台的服务器。一般情况下,前端服务器,跟后台的服务器,是分离开的,有不同的人去管理,如果项目小的话,可能就全放在一个。这个优化的化,你可以去了解下 CDN原理。这个是用来优化静态资源加载情况的。
另一种情况是,显示的,不是前端构成的,是用户上传文件产生的,这种情况下,现在一般有专门的对象存储,用过 七牛云,跟阿里的。这个的逻辑是文件上传的时候,不是上传到我们自己的服务器,上传到专门的云服务器,我们自己数据库只需要保存这些上传文件的地址,真正使用的时候,把连接给前端,前端自动会根据内容到专门的云服务器上去获取。所有的安全,优化,带宽,缓存命中,这些都有由云服务器去保证。 简单来说,只有有钱,这些东西根本不会成为你项目的瓶颈。
作为技术,我们讨论的应该不是这些。会做备份,这个可以有专门的磁盘阵列去实现,简单来说,就是上传的内容保存到磁盘的时候,会自动多保存几个备份到不同的磁盘上。还是那句话,多去了解下CDN的原理,最后这段,个人理解,不一定对。

影响系统性能的,应该是对硬盘的读写过大造成的,硬盘的访问速度有限,或者是受网络带宽影响,单纯的很多目录很多文件不会影响应用程序系统性能(单独根据文件路径和文件名访问某个文件的情况),但如果目录下文件过多,手动打开文件夹会比较慢,维护有问题。
在不大动干戈的情况下,可以修改下应用程序,在可接收范围内压缩,如果是访问造成读取量大,可以根据情况优化,比如生成缩略图,预览时访问缩略图,减少硬盘吞吐量。
一天增加上W张,应该和应用程序服务器分开处理了。

如果你的应用程序没问题,只是要做服务器维护工作定期删除文件,那你手动去 *** 作恐怕打开文件夹或者点个右键都会卡死,写个小程序或者用dos命令会轻松很多

1万张其实不大,1张100k的就很大了,10000张才1000m,一个G不到,用网络公司的服务器一年才600元左右,而且可以享受一些服务。主机买服务器成本大,而且需要专业人来管理。

icloud照片叫照片流,如果你平时手机登录了icloud,那么你手机中的照片就会备份进照片流。你进入照片流后点击某张照片,点击左下角一个箭头,然后选择存储到本地即可。

简单来说,iCloud相册就是把本地的照片上传到云端,可以在任何设备上看到这些照片,当然所说的设备主要就是苹果自家的那些,不过不要忘了网页版的iCloud,只要有浏览器就能看。

说实话把照片保存到云端并不是什么新鲜玩意,只不过iCloud相册有一个比较不错的功能,就是优化本地存储空间。这也就是手机上的照片过一段时间之后会变得模糊的原因,我们下面来进行解释。

您可点击iPhone手机的设置>iCloud,然后登录Apple ID后,开启照片流,“照片”应用程序中显示“照片流”文件夹,拍摄一张照片会自动上传照片至iCloud服务器,“照片流”文件夹中也会显示此照片。

照片流可以理解为Gallery的升级版,通过手机终端将照片自动上传至服务器,但是需要在接入WiFi的环境下才会起效,这也避免了高分辨率照片带来的过高数据流量。


而在其他iOS 设备中,绑定相同的Apple ID、开启照片流且接入无线网络,会即时下载照片流中的照片,保证同一用户多iOS设备下照片数据实时同步。


还需要特别强调一点,照片流与云备份中的照片是两个独立的东西,照片流会最多保存最长30天,最多1000张照片,并不会占用iCloud提供的5GB免费空间,但是照片备份则会,可以在“管理存储空间”中关闭“相机胶卷”项可删除照片备份数据。

网站中若存在大量,可以通过以下方式减轻服务器的压力:

1、动静分离

将静态以单独域名形式来部署,这样便于后期将走CDN加速,缓解服务器的带宽压力,也可以让客户端浏览器并行加载;

2、裁剪

通过服务器端脚本(Nginx+Lua)可以做到的动态等比例裁剪,裁剪后的尺寸较原图小一点,节省带宽;

3、走CDN加速

资源走CDN加速后,访客访问的,会从距离访客最近的服务器下载(基本上不会去源站访问,这样源站请求减少,缓解了IO压力)。而且走了CDN加速,可以缓解不同网络服务商的网络环境差异(假设机房是电信的,用户是移动网络,使用CDN后用户访问网站速度上是有提升的)。

4、格式优化

webp格式的不会降低的质量,但是使用了webp格式的,其尺寸较jpg格式可以降低30~50%,性能提升很多。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zz/13329373.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-16
下一篇 2023-07-16

发表评论

登录后才能评论

评论列表(0条)

保存