什么是保护REST服务的最佳方式?它应该是网站的一部分吗?

时间:2012-04-11 05:50:09

标签: rest architecture model system subdomain

我已经开始在一家新公司工作。我们有休息服务(与外部系统进行XML交换)并拥有网站。 REST服务在子域上工作,例如rest.mycompany.com。公司网站为mycompany.com。现场和休息工作就像这样 REST - > DB< -SITE。这意味着REST不是站点的一部分。这是一个独立的系统。 REST和站点使用一个数据库并使用90%相同的代码(模型,映射器等)。对我来说问题是双重编码,我想知道为什么它不能成为站点的一部分(导入导出控制器,XML解析器和一个记录器系统)?另一方面,在每个子域的安全性和高负载方面拥有不同的系统可能会更好......每个子域的分离流量?

1 个答案:

答案 0 :(得分:3)

  

网站和休息工作就像那个REST - > DB< -SITE。这意味着REST不是站点的一部分。这是一个独立的系统。 REST和站点使用一个数据库并使用90%相同的代码(模型,映射器等)。

这是个大问题。特别是因为一个系统可能会生成一个只在其他系统中显示的错误(不一致的数据)。很难调试。

  

对我来说问题是双重编码,我想知道为什么它不能成为网站的一部分(导出导出控制器,XML解析器和一个记录器系统)?

REST服务和网站只是UI层。实际的业务逻辑应该移动到UI层使用的第三个项目(类库/模块/ lib)。

  

另一方面,在每个子域的安全性和高负载方面拥有不同的系统可能会更好...每个子域的分离流量?

我会坚持使用不同的网站。不是为了表现,而是因为他们有不同的责任。