Nodejs / rails / backbone架构

我有一个应用程序,我正在构build,像craigslist,但function有限的非常多的作品。 我通常会使用这种types的应用程序的Rails,但我有兴趣学习nodejs / backbonejs框架,似乎这是一个很好的机会来捡起来。

我不确定nodejs和/或backbonejs如何适应这个解决scheme? 我不一定非要使用rails,如果有意义的话,我可以使用nodejs和backbonejs。

谢谢

你当然可以使用Node.js或者Rails或者同时使用Backbone.js – 我已经使用了所有这些技术或者这些技术的组合,他们都很棒。 select使用哪些应该取决于你正在build设什么,在较小的程度上,你的舒适度与每种技术。

用节点replaceRails
Node.js可以轻松replaceRails的function,即与数据库交互,包含模型逻辑,服务页面和资产以及控制路由。 有吨吨的模块可用于此。 一个常见的解决scheme是使用Express(简单的Sinatratypes的Web框架)为页面提供服务,并处理模板和ODM / ORM来处理数据库对象。 还有更广泛的像铁轨一样的框架,比如Geddy。

我认为Node是直接替代Rails的
如果你只是想要Rails的function,使用Rails。 Ruby / Rails代码看起来更干净,在我看来更具可pipe理性,并且更成熟一些( 随意点燃 )。 如果你正在服务很多不同的页面,Rails在组织事情方面做得很好。 但是,如果你正在制作一个单页面应用程序,这是Backbone的主要用例之一,那么很多Rails包是不必要的 – 你只需要模型逻辑和数据库交互。 在这种情况下,类似Express(Node)或Sinatra(Ruby)的ORM和RESTful路由在后端和前端之间进行通信将很合适。

添加了Node的function
节点的更引人注目的用例是具有实时或多人游戏的网站; 节点非常适合并发和asynchronous。 使用节点,如果你有客户端相互发送数据,而无需重新加载页面或数据从服务器推送到客户端没有另一个页面加载(这是一个伟大的模块是Socket.io )。 再一次,这是一个用例,可以很好地处理Backbone迎合的单页或高交互界面。