V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
James369
V2EX  ›  程序员

网站请求在多少量级的时候,会考虑采用上单独的图片服务器。

  •  
  •   James369 · 43 天前 · 3342 次点击
    这是一个创建于 43 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在只是搞个小网站玩玩,需要存一些小图片,比如人物的头像图片。
    刚开始玩可以不上单独的图片服务器。要是万一网站火了呢,人还是要有梦想的,不然和咸鱼有什么分别呢。

    所以,现在需要提前对图片服务器做规划吗,如何规划?比如,图片如何存储,数据库如何做预留?
    27 条回复    2021-06-16 00:35:42 +08:00
    zpfhbyx
        1
    zpfhbyx   43 天前
    只存路径,图片单独放,到时候直接同路径打包扔 oss 或者其他服务期 改下图片域名就行了
    ericls
        2
    ericls   43 天前 via iPhone
    储存不能像运算一样可以横向扩展

    所以在你需要横向扩展的时候 就是必须要单独封装储存服务的时候
    zhusimaji
        3
    zhusimaji   43 天前 via iPhone
    所有图片都丢 oss 了
    iikebug
        4
    iikebug   43 天前
    人多了直接就重构,预留啥?小图片直接就存本地完事。
    zxcslove
        5
    zxcslove   43 天前
    如果图片体积大,阻塞的效应很明显
    wg20080215
        6
    wg20080215   43 天前
    一步到位对象存储+CDN,都 2021 年了,还要啥自行车自己搞图片服务器呀。
    westoy
        7
    westoy   43 天前
    inotify 同步一份到 OSS 上, 不走流量几 G 空间一个月也就几块钱

    你本地带宽不够改个域直接切过去

    就算直接用 OSS, 本地也应该留存一个备份啊, 万一 OSS 翻车或者风控误删呢
    James369
        8
    James369   43 天前
    @wg20080215 有道理,搞 CDN 会不会麻烦,是不是还要同步来同步去的?
    wg20080215
        9
    wg20080215   43 天前
    @James369 国内的话阿里云、腾讯云、华为云这些都有成熟的全套解决方案,个人网站的话直接上车,按使用付费就行了。企业网站的话最好再自己简单开发个对象存储的管理后台更好一些。
    Rocketer
        10
    Rocketer   42 天前 via iPhone
    现在很多云开发都是从客户端直接传到 OSS,然后把 file key 提交上来存在数据库里。

    个人感觉这样扩展性很好,就算自己弄也可以学学。
    huangzxx
        11
    huangzxx   42 天前
    oss + cdn, oss 不仅是存储了,缩略图,防盗链之类的服务都有了。
    zjyl1994
        12
    zjyl1994   42 天前
    直接上 S3 兼容存储一步到位,腾讯有 COS 我记得 10G 免费把,够你用的了,做大了加钱就 OK 还省心,阿里也有类似的 OSS 。
    国际向的不差钱上原版 S3,差钱和我一样用 digitalocean 的 space,每月 5 刀 250G 存储配额+1T 流量,一个月一包烟钱多省心
    keepeye
        13
    keepeye   42 天前
    oss+cdn 不香吗
    rockyliang
        14
    rockyliang   42 天前
    不要做过多的设计,刚开始的时候用一台服务器就可以了,后面如果流量真的多起来了,再花钱去购买第三方的对象存储、CDN 等服务,然后把旧图片迁移过去,而且迁移图片也不是很难的事情
    iyaozhen
        15
    iyaozhen   42 天前
    现在不都是 CDN 嘛 多少图片都可以上呀,加载快多了
    cominghome
        16
    cominghome   42 天前
    加带宽比用 OSS 要贵到时候
    felixcode
        17
    felixcode   42 天前 via Android
    图片用专门的子域名,后面便于分出来。
    qwe520liao
        18
    qwe520liao   42 天前
    现在的云服务器一般入口带宽都比较高,换句话来说,客户端上传速度有多快取决于客户端的带宽有多高。但是大多数业务不能只上传吧,还得下载,这就是服务器的出口带宽,价格比较昂贵。

    所以现在一般都直传 OSS,然后通过 CDN 进行分发,当然也可以省略 CDN,只不过费用也是按照流量来计算的。
    hawei
        19
    hawei   42 天前 via Android
    @iikebug 本地不行的,打包打进去超过 2m 就不能 release
    beichenhpy
        20
    beichenhpy   42 天前
    我同事做一个外包,人家要求用 mongodb 存文件
    LeeReamond
        21
    LeeReamond   42 天前
    我前两天刚折腾完自己网站更换储存的问题,可以去翻我的历史帖子。

    LZ 这个问题的话,图片肯定是要搞一个独立服务存的,需要跟主业务完全解耦,因为运维上有很多操作两者并不发生联系,比如网站需要定期备份之类的,你把业务混合在一起,很多这种需求就没法做了。

    至于以后迁移,楼上说 OSS 的可能都是有钱人,靠谱的 oss 图床需要的开发成本,以及使用成本都挺高的(面向国内业务),不是几百块这种数量级能搞得定的,不过当然是效果最好的方案。次一级的可以选择自建服务,因为国外服务商环境,小型虚拟化服务比国内便宜得多,多节点配合 cdn,国内可以获得一个大差不差的效果。软件方面也有大量开源项目,总体性价比很高
    westoy
        22
    westoy   42 天前
    @beichenhpy

    正常,GridFS, 以前流行过的
    Huelse
        23
    Huelse   42 天前
    上对象存储呗,建设公司自己的统一后台管理,成本不高
    楼上自建的要么公司体量大业务也大,要么开发精力过剩(无嘲讽意思,只是个人推测)
    tidos
        24
    tidos   42 天前
    S3 + CloudFront AWS 全家桶. 甚至整个网站都可以部署到 S3 上。
    gamexg
        25
    gamexg   42 天前
    web 直传上传到对象储存,
    如果不想,也可以后期上对象储存
    类似七牛的镜像回源功能很方便,可以无缝接的切换到对象储存
    用户访问对象储存,如果对象储存不存在,则自动从源站拉去并保存到对象储存。
    yanzhiling2001
        26
    yanzhiling2001   42 天前
    访问量影响不大,主要是服务器的带宽小。图片多了 不管是请求还是传输都挺麻烦的,图片也都扔图床或者 oss 了
    AkideLiu
        27
    AkideLiu   42 天前 via iPhone
    访问量?日 UV600 左右 weekdays,我的小破站。图片是 s3 协议的存储 minio,单独域名 Gdns + 国内外两套 cdn
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2693 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 04:47 · PVG 12:47 · LAX 21:47 · JFK 00:47
    ♥ Do have faith in what you're doing.