REST-应用程序层还是服务层?

时间:2018-07-23 04:29:57

标签: java rest web-services architecture 3-tier

我正在编写Web应用程序,为客户端公开REST接口和Web套接字。该项目与基础数据库进行交互。 UI层和整体业务逻辑作为单独的项目处理。现在,我想在此Web应用程序中应用图层。

我将Web应用程序拆分为

1. Service layer (Exposes REST and Websocket)
2. Domain layer (Handling web application's Business logic)
3. Persistance layer (DB access)

这种分离对吗?还是我应该将REST视为application layerapplication layer又称service layer吗?这里哪个更有意义?

1 个答案:

答案 0 :(得分:0)

REST接口与UI属于同一层。它是与您的应用进行交互的一种方式,只是没有用户界面。我喜欢将API与UI放在一个单独的项目中,以便可以分别部署和单独缩放。理想情况下,UI将使用API​​进行数据访问。

话虽如此,问这个问题意味着您正在设计自己的架构模式,这不是一个好主意。我的大脑已经多次攻击并解决了这个问题,因此您应该选择一个并使用它。我发现最灵活的一种是洋葱架构(https://dzone.com/articles/onion-architecture-is-interesting),它非常适合DDD或Active Record。但是,在Onion Architecture中,事物在界面和实现之间的划分需要一定的习惯,因此,如果您决定以这种方式进行迁移,可以给自己一点额外的时间来习惯它。完成后,您将对灵活性感到满意。