NoSQL架构白皮书

我想更好地理解像RabbitMQ,MongoDb,Node.Js和Hadoop这样的技术如何整合到一个系统架构中,以提供高可用性/可伸缩性/性能。

任何人都可以指导我获取这类信息的好消息吗?

编辑

诚然,这不是一个很好的问题,我应该澄清。 我没有在上面的堆栈中find任何技术人员的具体情况,我理解他们每个人做什么,并了解如何使用它们。 我正在寻找的是一个利用消息队列/ NoSQL / Map reduce /事件驱动的lang的系统规范,以便我可以更好地理解它们如何协同工作来提供高可用性/可伸缩性/性能。

如果我是你,我会专注于整体系统devise,然后专注于特定的技术。 RabbitMQ将信息从一个地方传输到另一个地方,MongoDB存储文档,Node.JS处理HTTP请求,Hadoop存储和处理数据。 每个系统都有不同的竞争者。

我会从highscalability.com博客看看现实生活中的架构 。 我也会看看列出了“可用”意味着什么的CAP文件 。

好像你在“为什么要用这个而不是LAMP / Ruby / Python / $ YourOldStackHere”的上下文中要求NodeJS的一般介绍

我能build议的唯一的事情是:观看一堆nodeJSvideo ,阅读http://nodebeginner.org ,并开发一个简单的应用程序来感受这一切。

就他们如何“融入系统架构以提供高可用性/可扩展性/性能”而言,它们恰如您所期望的那样; Node提供了一种快速事件驱动的语言,memcache / redis / mongo提供了一个(非)持久性键/值存储,它放弃了许多SQL驱动解决scheme实际上不需要的SQL的关系方面,并且为了加快交换速度。

“高可用性/可扩展性/性能”都归结为硬件上技术的速度。 快速的东西更具可扩展性,可用性,高性能。 NodeJS是build立在V8上的,它是最快的JS引擎,但是如果你和PHP比较,这并不意味着什么。

一个快速谷歌肯定会提供一些“节点vs $ YourStack分析”