将用户数据存储在服务器上的JSON文件中

时间:2016-06-12 14:27:27

标签: php mysql json scalability flat-file

我正在构建一个在后端使用PHP和MySQL的Web应用程序。我想存储一些用户数据 - 基本上是一组JSON格式的对象,详细说明用户"收藏夹"申请信息。我不想将这个JSON数据存储在我的用户数据库表中的单个MySQL字段中,因为它看起来效率不高。

因此,我想将JSON数据存储在服务器上的平面文件中,并使用唯一标识符来识别文件所关联的用户。我的问题是:对于超过10,000名用户,这是一个可扩展的解决方案吗?

1 个答案:

答案 0 :(得分:2)

这可能会给您带来很多麻烦,无论是在技术方面还是在安全方面。不,它不是很可扩展。想想它会导致的问题:当您需要添加服务器时会发生什么?你将如何同步文件?如果你想做一些涉及多个用户的事情怎么办,比如看看有多少人有XYZ作为最爱?

更好的选择是执行以下操作之一:

  • 规范化您的数据库(无论如何都要执行此部分)并将收藏夹放在他们自己的表
  • 将收藏夹保存在JSON列中(可能是错误的答案,但在某些情况下有意义)

如果您担心速度,可以使用Redis,memcached或其他系统实现一些缓存。但还没有这样做 - 那是不成熟的优化。在你需要的时候做。