如何构建应用程序架构?

时间:2017-11-19 01:56:20

标签: node.js angular hibernate express architecture

我参与了新项目,我想问一下项目的大图。我打算为我们的网站服务构建新的用户界面。目前,我们已经使用Hibernate完成了所有必要的Rest API的实现。

我们使用的技术是Angular for front-end。我使用Angular2构建了一个小应用程序,它实现为在Tomcat服务器上提供服务。我开发的方式是开发人员通常采用的方式。所有组件都是用typescript编写的,它们接收请求,调用RestAPI,从Rest API检索JSON对象,并操纵JSON并使用模板显示结果数据。这些打字稿文件使用webpack转换为javascript,并将这些javascript文件部署到tomcat中。

但经过研究,现在我开始知道nodejs被广泛使用而不是tomcat,在性能方面,nodejs比使用tomcat要好得多。因此,我正在寻找适合我们的项目架构的一些好例子,其后端是使用基于Hibernate的RestAPI构建的。但是,它还没有轻易找到。我想从nodejs调用RestAPI的方式,我不完全确定,我试图找到一些好的做法,但我找不到它,非常好的例子。关于MEAN堆栈有很多资源但不适用于我的情况。

你能就我想要达到的目标提出一些建议吗?最佳实践,开源,并提供一些关于我必须构建的架构的详细解释?

2 个答案:

答案 0 :(得分:3)

这是一个非常广泛的问题,但您需要的只是您的其余Web服务后端应该在node.js而不是在tomcat容器中运行。在节点中,人们大多使用express(用于web app和api)或restify(主要用于web服务api)。而且,还有很多其他的。对于ORM,您需要使用除Hibernate之外的其他东西(这是特定于Java的)。 node.js中还有数十个流行的ORM框架。但是,如果你谈论MEAN,MongoDB是一个NoSQL数据库,而不是关系数据库。否则,在架构方面,你可以用Java做什么(tomcat,hibernate,...),你可以在node.js中做到。

答案 1 :(得分:0)

对于FrontEnd部分 - 请记住,在编译为JavaScript之后,您只需要从服务器提供这些静态文件。 虚拟目录可以。