基于nodejs的工程如何保存小文件比较好?
发布于 2年前 作者 anubiskong 1063 次浏览

假设我要做一个MP3下载网站, 封面的文件一般在10K以下, 再加上用户的头像, 也就是说我有大量的小图片需要存储 每个页面浏览时都会有很多图片请求

我需要这些小图片存的省,读得快

如何存放类似头像这样的小文件比较节省性能? GridFS? 直接保存在文件夹里面? 如果需要缓存的话应该用什么技术呢? 请大家畅所欲言, 教教我这个菜鸟

6 回复

数据存gridfs,前端通过nginx proxy_cache或者Varnish代理缓存下

我找了一些书, 上面说gridfs是用来存储大文件的, 尤其是流媒体文件, 存小文件时因为要读2次数据库, 所以反而会变慢, 再者我也不清楚这样返回存储小文件是否能正常返回304

都是特别小的文件可以直接存mongodb 二进制字节数组里面,不需要gridfs,我的用户头像就是是这么用的

用七牛得了,免费套餐够你用了~

本宝贵的建议, 以前真不知道这个东西, 不过我还是希望自己用nodejs解决这个问题

@anubiskong 用nodejs 还不简单,建议直接存文件得了,直接通过nginx来获取~ 静态文件,css,js,图片,这类,还是交给nginx~

回到顶部