Sinatra vs Node.js用于简单REST API的性能

时间:2015-04-08 09:29:40

标签: node.js sinatra

这不是一个神圣的战争问题,我只是问在我的具体项目中哪个框架是最佳选择

我正在编写REST API并在Node.js和Sinatra之间进行选择。 API的一种方法将非常频繁地使用(每天±100k请求)。 这个请求非常简单:从数据库中选择一行,进行一些计算,更新数据库中的一行。

但是,正如我所说,它会被频繁调用,我需要选择一个在这种情况下表现更好的框架。 这是一个简单的应用程序,在这种情况下,我不关心哪个框架更容易或“更好”,只关心性能。我已经在Sinatra中编写了一个原型,整个应用程序不到150行代码。

我读到了Node.js,但从未使用它创建过真正的应用程序。 Node.js在性能和可扩展性方面是否会成为该项目的明智选择?

1 个答案:

答案 0 :(得分:0)

每天100k请求大致是每秒请求,假设白天请求分布不均。两种解决方案都可能没有问题。 您可能会陷入过早优化陷阱

话虽这么说,Javascript,因为它的异步特性在高I / O方面明显优于Ruby(Sinatra只是一个简单的Web框架,Node就是你在服务器上运行Javascript的方式)。

现在按照"我应该做什么",我怀疑大多数人会告诉你使用你已经工作的原型并使用它直到它不再好,如果有的话来吧。看到它是如此小的应用程序,以后无论如何都要重写它不应该是一个问题!