【问题标题】:Can meteor.js web framework support a social networking architecture effectively?meteor.js Web 框架能否有效支持社交网络架构?
【发布时间】:2013-05-08 20:27:36
【问题描述】:

所以我是 node.js、javascript 框架和meteor.com 的新手。我正在尝试学习如何建立社交网络,我很天真/努力理解为什么 Meteor.js (meteor.com) 不能做你现在看到的所有伟大的事情,比如 twitter、facebook、instagram是做?

在客户端/服务器、身份验证配置、用于扩展和性能的异步编码之间存在彗星技术,并且构建在 node.js 之上。

我正在尝试了解有关长轮询、彗星、gridFS 或文件存储方式的更多信息,以及复制集和分片等一般信息以帮助提高性能(尤其是因为 Redhat 有这个 openshift 平台,我们可以构建我们的拥有私有云)。

我有一些计算机科学背景,但这似乎很神奇,所以我错过了什么?如果你们都可以想到一些流行语,使 Meteor.js 不支持的社交网络滴答作响,那会是什么?

我听说过关于并行和并发(webworkers 修复了部分问题,不是吗?),websockets,像 python 或 java 这样的高级语言最好支持。只有一个人可以学习我的答案,那就是这样做,但我认为有人可以通过这个线程以一种或另一种方式左右我。谢谢!

【问题讨论】:

    标签: meteor social-networking


    【解决方案1】:

    这个问题包含了一个非常广泛的想法,只关注单独使用流星就可以解决这个问题。这里有几点需要考虑:

    1. 我认为这个框架不是学习长轮询、gridFS 等的一个很好的起点。Meteor 的目标是成为一个更像是包生态系统的框架,例如您当然可以推出自己的上述策略 - 但是对于动态更新,Meteor 使用其自己的数据交付协议 (DDP),该协议由 Spark 等大量核心软件包支持/实现。

    2. 并行处理和并发可以使用其他语言更好,但为什么不使用?由于 Meteor 主要基于 node.js,而 node.js 非常适合上述内容,而且它可以非常很好地与其他语言一起使用,因此您可以顺利集成。 Meteor 并不真正要求您完全依赖它,因为其他语言会说同样的话。这一切都在您项目的一般工程/规划中。 There are already lots of really good stuff out there that rely on Meteor,加入吧!不要害怕。这一切都归结为计划(当然还有完成计划的勇气/毅力)。

    3. 目前,我们无法判断 Meteor 是否无法提供大型网站通常的伟大功能。当然,我们可以进行实时更新、(它自己的)发布/订阅模式和强大的东西来促进开发(查看流星的七个core concepts 以最好地理解这一点)。 不是不可能复制已经存在的东西,真的。我们现在只能带着不确定性说出来,主要是因为..(见下一点)

    4. 框架这么年轻!在撰写本文时,它仍为 0.6.x。请花点时间查看Meteor Roadmap,了解在更广泛地支持持久性/数据库、性能考虑和官方 DDP 规范方面的进展情况。

    我希望我已经回答了您的询问(我希望还有更多)。我自己对流星感到非常兴奋,因为它很容易成为下一件大事。我们也有几个使用 Meteor 的(用于)生产项目,因此您可以从一个在 Meteor 中进行过大量黑客攻击(以及大量研究和第一手经验)的人那里获得直接的见解。我并不是说我是专家,与 Meteor 一起工作真是太有趣了,我完全不是在开玩笑。

    希望这会有所帮助!

    P.S.:虽然是公平的警告,但此时资源和文档确实很少。我会尽我所能为社区做出贡献(我的出发点之一是在这里,在 SO 上)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-29
      • 2012-02-27
      • 1970-01-01
      • 1970-01-01
      • 2015-10-24
      • 2016-05-11
      相关资源
      最近更新 更多