根据我的经验,这就是我想出来的。
我目前正在将用户和统计类保存到MongoDB中,一切正常。
但是如何保存每个用户生成的日志?
正在考虑使用logbackSiftingAppender并委派日志信息
分离MongoDBCollections。就像每个mongodbCollection都有用户的id一样。
这样我就不必创建高级的mapreduce查询,因为日志被整齐地叠放在一起。
或者对fileappender使用SiftingAppender,这样每个用户都有一个单独的日志文件。
如果MongoDB有一百万个日志集合,每个日志集合都用用户ID命名,那么这就有问题了。(有可能吗?)
如果所有东西都存储在MongoDB中,MongoDB主从复制将
如果主节点死了很容易。
fileappender方法怎么样。感觉会有很多日志文件
管理。你可以根据字母表把它们保存在文件夹里。文件夹A
对于名称/id以a开头的用户/id。
还有什么其他的选择可以让这个工作?

最佳答案

使用嵌入的文档,每个用户有一个文档,其中包含一个包含日志文件的嵌入文档数组。如果集合变大,您还可以从分片中受益。

10-07 19:02
查看更多