【问题标题】:Social Network development in node.js and mongoDBnode.js 和 mongoDB 中的社交网络开发
【发布时间】:2019-06-26 21:20:32
【问题描述】:

我想了解以下内容,以便我可以修复我的服务器架构并使其更加灵活。

  1. 是否可以将主页提要数据 [例如:Facebook homeFeed] 存储到变量中以供将来操作,或者仅获取与 homeFeed 相关的数据并操作需要在运行时完成的所有操作。

    请注意,主页 Feed 的数据集可以包含任何内容。 [尚未开发]

  2. 在任何给定时间对 MongoDB 的请求是否有任何限制,这会导致数据处理延迟?

  3. node.js 和 MongoDB 是社交网络开发的好选择吗?

  4. 如果您知道与社交网络开发相关的任何事情,请分享利弊。

【问题讨论】:

标签: node.js mongodb server architecture


【解决方案1】:

是否可以将主页提要数据 [例如:Facebook homeFeed] 存储到变量中以供将来操作,或者仅获取与 homeFeed 相关的数据并操作需要在运行时完成的所有操作。

您可以(有时应该)为某些用户(例如最活跃的用户)预先计算主页 Feed 数据。不过,您不会将其存储在 变量 中,而是将结果缓存 使用 Redis 之类的内容。

在“请求”的基础上生成主页提要也是可能的,而且很好。

这两种方法都需要仔细考虑您的系统架构、性能、可扩展性、稳健性、容错性等...

在任何给定时间对 MongoDB 的请求是否有任何限制。哪些会导致数据处理延迟?

是的。 MongoDB 实例(或任何其他数据库)的资源有限。有关如何大规模使用 MongoDb 的更多信息,请查看 MongoDB 的 ShardingReplication 文档。

node.js 和 MongoDB 是社交网络开发的好选择吗?

Node.js 和 MongoDb 是快速原型设计的良好组合,您可以相当快地获得生产力。您熟悉的任何语言在这里都是不错的选择,因为您的重点似乎是建筑。 Go、Java 和 PHP 也是不错的选择。

在现实世界中,社交网络的构建工具远不止于此。由于团队根据手头的任务使用各种编程语言、数据库和框架。

【讨论】:

  • 你能分享一些我在开发实际应用程序时应该学习和关心的技巧和窍门
  • 查看可扩展的系统架构。这是一个非常庞大(且引人入胜)的主题,说实话没有提示和技巧
  • 可扩展的系统架构,这是给我的一个小窍门 :p,非常感谢您对这个领域的回答和热情——架构。
猜你喜欢
  • 2015-01-30
  • 2010-11-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-22
  • 2013-10-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多