我被告知这个问题是主观的,但是嘿嘿。
我最好将用户活动存储在mysql数据库或xml文件中的表中。目的是将数据打印在其帐户页面上。
我担心我会在服务器上找到一个巨大/慢速的数据库或许多xml文件(每个用户一个)。
由于
答案 0 :(得分:1)
使用某种数据库。文件可能存在有关I / O,锁定,并发访问等问题。 如果您确实使用文件,请选择json而不是xml。 对于RDMS,Mysql很好。 我建议使用NOSQL,我的选择是Redis。
答案 1 :(得分:0)
我建议应该在DB上。
1)因为维护日志信息的数据库表要比单独的日志文件容易得多。服务器负载不多。
2)对于RDBMS
,您需要查询那些对xml文件很难的用户日志历史记录
3)正确的索引将有助于更快的数据检索。
4)XML读/写花费更多I / O OP
答案 2 :(得分:0)
将其存储在表格中。如果您要存储数十亿条记录,则需要调查分区或分片,但这些是您应该解决的问题,当且仅当您达到限制时。
通过模拟足够的用户活动来测试您拥有的任何设计,以代表一年或两年的有力使用。如果它坚持下去,你就可以了。如果不是,您将遇到具体问题。
请记住,在此类表中,索引对于检索速度很重要,但过多的索引会降低插入速度。在你必须找到的索引太多和太少之间存在平衡。
XML文件的追加通常非常昂贵,除非您执行类似Adium did with their reverse XML parser构建的有效附加到XML日志的内容。