我想了解以下内容,以便修复服务器体系结构并使其更加灵活。
将家庭供稿数据[ex:Facebook homeFeed]存储到变量中以供将来处理是否很好,或者只是获取与homeFeed相关的数据并处理在运行时需要做的所有事情。
请注意,家庭供稿的数据集可以包含任何内容。 [尚未开发]
在任何给定时间对MongoDB的请求是否有限制,这会造成数据处理的延迟?
node.js和MongoDB是社交网络开发的不错选择吗?
如果您了解与社交网络发展有关的任何知识,请分享其优缺点。
答案 0 :(得分:1)
将家庭供稿数据[例如:Facebook homeFeed]存储到变量中以供将来处理,还是只获取与homeFeed相关的数据并处理在运行时需要完成的一切都是好事。
您可以(有时应该)为某些用户(例如最活跃的用户)预先计算家庭供稿数据。不过,您不会将其存储在变量中,而是使用Redis之类的东西来缓存。
基于“请求”生成家庭供稿也是可能的,而且很好。
这两种方法都需要仔细考虑系统的体系结构,性能,可伸缩性,鲁棒性,容错性等等。
在任何给定时间向MongoDB请求是否有任何限制。哪些会造成数据处理延迟?
是的。 MongoDB实例(或任何其他数据库)的资源有限。有关如何大规模使用MongoDb的更多信息,请查看MongoDB的Sharding和Replication文档。
node.js和MongoDB是社交网络开发的不错选择。
Node.js和MongoDb是快速原型制作的良好组合,您可以相当快速地提高生产率。您熟悉的任何语言在这里都是不错的选择,因为您的重点似乎是建筑。 Go,Java和PHP也是不错的选择。
在现实世界中,社交网络所使用的工具远不止于此。由于团队根据手头的任务使用各种编程语言,数据库和框架。