gpt4 book ai didi

database - 我们可以使用 JSON 作为数据库吗?

转载 作者:太空狗 更新时间:2023-10-30 01:40:18 24 4
gpt4 key购买 nike

我正在寻找快速高效的数据存储来构建我的基于 PHP 的网站。我知道 MySql。我可以在我的服务器根目录中使用 JSON 文件而不是 MySQL 数据库吗?如果是,最好的方法是什么?

最佳答案

您可以使用任何单个文件,包括 JSON 文件,如下所示:

  • 以某种方式锁定它(谷歌 PHP 文件锁定,它可能就像向文件打开函数添加参数或将函数名称更改为锁定版本一样简单)。

  • 从文件中读取数据并将其解析为内部数据结构。

  • 可选择修改内部数据结构中的数据。

  • 如果您修改了数据,将文件截断为 0 长度并向其写入新数据。

  • 尽快解锁文件,其他请求可能正在等待...

  • 您可以继续使用内部结构中的数据来呈现页面,只要记住一旦您释放文件锁它可能已经过时并且其他 HTTP 请求可以修改它。

    <

此外,如果您修改用户网络表单中的数据,请记住它可能已在两者之间被修改。例如,加载包含用户详细信息的页面以进行编辑,然后其他用户删除该用户,然后编辑器尝试保存更改的详细信息,并且应该可能会出错而不是重新创建已删除的用户。

注意:这是非常低效的。如果您正在构建一个网站,您希望同时有超过 10 个用户,则必须使用更复杂的方案,或者只使用现有数据库......此外,您不能拥有太多数据,因为解析 JSON 并生成修改后的数据JSON 需要时间。

只要您一次只有一个用户,它就会随着数据量的增长而变得越来越慢,但是随着用户数量的增加,更多的用户意味着更多的请求更多的数据,事情开始变得呈指数级变慢,你很快就会达到限制,在文件可用于处理请求之前 HTTP 请求开始过期...

此时,不要试图破解它以使其更快,而是选择一些现有的数据库框架(SQL 或 nosql 或基于文件的)。如果你开始自己动手,你最终只会重新发明轮子,通常很糟糕:-)。好吧,除非它只是编程练习,但即便如此,学习使用一些现有框架可能会更好。

关于database - 我们可以使用 JSON 作为数据库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13899342/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com