1

我刚刚加入了一个新项目,该项目结合了许多用不同语言(Python、Ruby、Java 和 Perl)编写的组件。该项目是一种处理文档的管道,可以作为命令行 shell 脚本运行。管道/shell 脚本将内容从工具传递到另一个,然后最终将输出打印到文件中。在此过程中,一些工具会打印文件,然后将这些文件用作其他工具的输入。

我在这个项目中的工作是将它带到网络上。所以我的问题是在这样一个项目中应该遵循的正确/最佳实践方式/架构是什么,你有许多组件用不同的语言编写?
并且 Node.js 是可以组合组件的最佳工具/语言,正如LinkedIn所说:“如果你看看 Node,它最擅长做的事情就是与其他服务交谈。

4

2 回答 2

4

我认为正确的答案可以填满书...

也就是说,我建议通过实现某种服务总线来避免与谁知道谁交谈的小模块的肮脏混乱。如果你能做到这一点,那么所有语言/子项目都必须只与总线兼容,而不是与其他每一个兼容。这样,复杂性将从 N 阶乘下降到 2xN。

于 2012-06-28T23:24:39.597 回答
1

您最应该警惕的一件事是安全性。如果您将某些脚本公开为可通过 Web 执行,尤其是在需要用户输入的情况下,您需要彻底验证它。

这可能是最重要的事情。框架或架构的选择将仅次于安全性。

于 2012-06-28T23:08:58.100 回答