【发布时间】:2011-11-25 20:33:38
【问题描述】:
我想实现一个 Web 服务,其目的是执行存储在数据库中的批处理程序。 “命令行参数”将作为 JSON 序列化对象发送到我的 Web 服务。
由于这暂时只是一个个人项目,我主要关心的是优雅和可维护性,因此 node.js 似乎是一个自然的选择。 (我知道 Apache 和 IIS 是成熟的、经过验证的技术,但我发现它们分别过于复杂且不够透明。)
然而,根据我的阅读,尽管 node.js 可以将非顺序任务委托给单独的并发进程,但 node.js 不能自己同时处理这些非顺序任务。这给我带来了以下两难境地:
如果我创建一个单独的命令行实用程序以从 node.js 调用,而将 Web 服务仅作为命令行实用程序的 API,我将不得不传递大量命令行参数(序列化的 JSON 对象) 从 node.js 到命令行实用程序,并且还必须自己实现 JSON 解析器,或者担心将其他人的 JSON 解析器合并到我的程序中。
如果我在 node.js 中处理所有内容,我将失去并发请求处理功能。当然,除非有办法在 node.js 中实现真正的并发。
这些选项都不适合我的口味。所以我的问题是:有没有办法为node.js编写真正的并发程序,从而避免这种困境?
【问题讨论】:
标签: web-services node.js concurrency