1

我试图自己建立一个网站,但我也想建立一个原生的移动应用程序,将在未来访问相同的数据库。这是一个很好的Web应用程序体系结构吗?

我在想什么是使用Node.js为DB构建Web服务包装器,并且每个数据库操作都将通过Web服务API执行。而对于网站框架,我将使用Rails。

请让我知道这是不是一个好的建筑。我不确定使用Web服务封装数据是否是一个好主意。会有任何性能问题吗?如果可行,我应该使用哪个数据库?并且钢轨可以通过Web服务与数据库通信吗?

非常感谢!

更新

为什么人们失望投票这个问题?

+0

您是否认为这是一种将快速增长并需要扩展的应用程序类型?您是现有的Rails开发人员还是您有时间使用此项目来学习新技术? 几乎任何现代语言都可以用来公开您设计的API。您的API是通过您的语言与数据库交谈并执行功能的一个层。你有没有考虑像MongoDB这样的NoSQL数据库? –

+0

嗨史蒂文,谢谢你的回复。我只想自己创建一个网站,它可能会增长并需要一些可扩展性。我是一名java程序员,想学习rails。我听说Node.js可以很容易地缩放。当rails与Node.js + MangoDB通信时,会有任何性能问题吗? – user2440712

回答

1

我认为您现在的体系结构中有更多的技术超出您的需求。

我个人(使用节点或者Rails - 无论是超级容易做到这一点,既可以使用相当不错的任何DB)创建数据库之上的REST API

然后,你可以写任何数量的前端程序的“应用程序”,无论它们是网络应用程序,ios应用程序,android应用程序等等......它们都将从后端的REST api获取数据。

你甚至可以考虑使用Angular,Knockout或Backbone等书写前端为单页面应用程序。如果你用节点来完成,你的整个堆栈基本上都是用javascript编写的。它可能会让人混淆,但它超级强大。

+0

谢谢Strat。这是我想要的答案。 – user2440712

+0

高兴成为一名帮助!祝你的应用程序好运。 – Strat

相关问题