• 请不要在回答技术问题时复制粘贴 AI 生成的内容
firhome
V2EX  ›  程序员

请教一下后端同学,纯静态用数据库和不用数据库的区别?

  •  
  •   firhome · Dec 30, 2019 · 7648 views
    This topic created in 2500 days ago, the information mentioned may be changed or developed.
    打算用 node 把自己的一些 md 文档 生成 html。全部是纯静态网页。

    但是想加评论功能。但是又不想整数据库 (mysql),

    所以目前想,用户留言,请求接口。我在网站目录直接生成一个文件保存(根据一些规则保存不同)。

    然后再次访问,我接口再去查有没有 xx 规则下的某文件 来读取返回展示。

    请问一下 后端大佬们, 这个做法 和 接入数据库有什么区别呢? 效率 /速度 还是 管理方面?
    Supplement 1  ·  Dec 30, 2019
    因为我不是做后端的,只是思考了一下怎么简单怎么来。

    非常谢谢各位大佬的回复。
    44 replies  •  2019-12-31 21:25:33 +08:00
    knva
    knva
    Dec 30, 2019
    1
    都差不多,另外 个人备案站点不允许开启评论
    augustpluscn
    augustpluscn
    Dec 30, 2019
    2
    区别就是你的数据管起来没有用数据库方便(逃)
    cz5424
    cz5424
    Dec 30, 2019 via iPhone
    3
    @augustpluscn 正解,数据库多好,一般多一点的数据。文件存储不要跟数据库比效率,速度,管理
    bolide2005
    bolide2005
    Dec 30, 2019❤️1
    4
    原理上肯定没问题啦,想当年数据库也是从文件进化而来的,你这样很“复古”,有 80 年代的风范。

    但是你需要考虑文件更新以及检索的便利程度,试想一下,你的网站要不要提供用户系统呢?用户的昵称你是直接和评论生成在一起储存在文件里,还是把用户信息放到一个单独文件里?那如果用户改名字了你得怎么更新呢等等等等这些问题。

    如果只是你目前提到的需求,比如用户只存储昵称并且没有用户系统的话,我觉得也还行
    pinyue
    pinyue
    Dec 30, 2019
    5
    没区别。。你的结构设计好了,就是文件数据库了
    jinliming2
    jinliming2
    Dec 30, 2019 via iPhone
    6
    了解一下数据库的发展史,你就知道了,你这个做法是很久以前没有数据库管理系统的年代的做法了
    hillwall
    hillwall
    Dec 30, 2019
    7
    ztxcccc
    ztxcccc
    Dec 30, 2019
    8
    你这种就用 SQLLite 吧,不用装
    Hstar
    Hstar
    Dec 30, 2019
    9
    这就是最原始的数据库,简单的说,加入索引和事务就是一个现代数据库。
    iamverylovely
    iamverylovely
    Dec 30, 2019
    10
    json 可以
    leishi1313
    leishi1313
    Dec 30, 2019 via Android
    11
    你要用文件真不如数据库,SQLite 也挺好了。但如果需求是静态网站做评论的话,discuz 也挺好
    djFFFFF
    djFFFFF
    Dec 30, 2019
    12
    你这就是最简单的数据库实现啊……
    Kilerd
    Kilerd
    Dec 30, 2019
    13
    您再想想「有没有 xx 规则下的某文件」 这个东西像不像数据库里面的 raw data file ?
    rayhy
    rayhy
    Dec 30, 2019 via Android
    14
    思路类似 staticman
    mikoshu
    mikoshu
    Dec 30, 2019
    15
    不直接对接第三方的评论系统吗?
    wc951
    wc951
    Dec 30, 2019 via Android
    16
    类似 hive 数仓不就是文件到数据库表的映射吗
    passerbytiny
    passerbytiny
    Dec 30, 2019
    17
    别得不说,光后期额外增加新的“屏蔽关键词”,就能让你头疼死。
    whalegao
    whalegao
    Dec 30, 2019 via iPhone
    18
    这就是一个最简单的数据库。
    diveIntoWork
    diveIntoWork
    Dec 30, 2019
    19
    用内存数据库,写个脚本定时持久化就行了,每次服务器重启再从文件恢复
    shakaraka
    shakaraka
    Dec 30, 2019
    20
    🎉恭喜你!!成功发明一个新数据库
    lemonTreeTop
    lemonTreeTop
    Dec 30, 2019
    21
    你是想以文件的方式实现数据库的部分功能
    Yourshell
    Yourshell
    Dec 30, 2019
    22
    挂个第三方的评论系统
    loading
    loading
    Dec 30, 2019 via Android
    23
    楼主为啥不用评论服务,是不知道吗?
    kosmosr
    kosmosr
    Dec 30, 2019 via Android
    24
    懒得自己弄数据库可以试试 LeanCloud
    zdnyp
    zdnyp
    Dec 30, 2019
    25
    静态博客貌似都是用 json 文件做数据库的
    annielong
    annielong
    Dec 30, 2019
    26
    文本数据库呗,早些时候小项目都是这样存的,但是复杂些的功能就不要想了
    JerryCha
    JerryCha
    Dec 30, 2019
    27
    然后楼主造了个数据库
    virusdefender
    virusdefender
    Dec 30, 2019
    28
    很多人博客没有评论是因为没有服务器,比如放在了 github pages 上,而你这有服务器,直接上一个 sqlite 就好了。
    zjsxwc
    zjsxwc
    Dec 30, 2019 via Android
    29
    我见过,不用数据库,把评论、用户密码登都保存在不同 json 文本里的
    luozic
    luozic
    Dec 31, 2019 via iPhone
    30
    sqlite,或者云盘里面的 json 啥文件也行
    FindHao
    FindHao
    Dec 31, 2019 via Android❤️1
    31
    加 disqus 吧。国内默认无法访问,但是这样可以过滤掉一大批没有开代理的用户。
    busfool
    busfool
    Dec 31, 2019 via Android
    32
    逆天而行,很复古。十多年前有这种开源程序。
    redeemer1001
    redeemer1001
    Dec 31, 2019
    33
    推荐 sqlite 我做的十几人用的小网站就用这个 比自己写文件储存方便太多
    SuperMild
    SuperMild
    Dec 31, 2019 via iPhone
    34
    可以是可以,但要注意,这不是简单化,而是复杂化。

    我自己最近就有个小玩意儿这样搞,累死了,要注意很多小问题。我只能说,很好玩,但不如 sqlite 简单方便。
    Ahri
    Ahri
    Dec 31, 2019
    35
    你的实现会有 race condition。
    shunfy
    shunfy
    Dec 31, 2019 via iPhone
    36
    怎么排序?怎么关键字搜索?
    msg7086
    msg7086
    Dec 31, 2019
    37
    文件系统本来就是一种数据库。
    Lockeysama
    Lockeysama
    Dec 31, 2019
    38
    Hexo 不香吗?
    itskingname
    itskingname
    Dec 31, 2019
    39
    用 leancloud 解决你的问题。
    mywaiting
    mywaiting
    Dec 31, 2019
    40
    纯静态的站点可以用 disqus 这样的评论服务,国内的站点可以找个 gitalk 这样 git issue 用法的评论系统
    daozhihun
    daozhihun
    Dec 31, 2019
    41
    最简单的事直接改 html 的源码,每评论一条里面插一个 div,哈哈哈哈
    CodeXx
    CodeXx
    Dec 31, 2019
    42
    SQLite 一把唆
    abcbuzhiming
    abcbuzhiming
    Dec 31, 2019
    43
    你这就是自己实现的文件数据库——不过性能是大概率比不上别人玩了十几年的
    angsheng
    angsheng
    Dec 31, 2019
    44
    楼主还可以把回帖都存在变量里
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1735 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 88ms · UTC 17:08 · PVG 01:08 · LAX 09:08 · JFK 12:08
    ♥ Do have faith in what you're doing.