2016-09-12 38 views
-4

我们正在与一个客户端合作,他们拥有复杂的数据处理需求,并希望从iSeries上的存储过程转移到服务以加速性能。该服务会将多个表加载到缓存中,然后根据传递给它的信息执行规则。我们将从ASP.NET MVC 4应用程序与此服务交互。由ASP.NET MVC应用程序访问的外部服务的最佳实践

规则的数据将会定期更新,甚至可能会每天多次更改。他们需要能够让当前登录到应用程序的用户在整个会话中使用相同的规则;新用户将访问最新更新的版本。如果可能,服务和应用程序可能会传递复杂的对象。

寻找建议,以完成此目的的最佳方法。我觉得像构建DLL一样不可行,因为它会经常更新。我对WCF不是很熟悉,但觉得这可能是一条路。任何帮助是极大的赞赏!

回答

1

从他们的iSeries存储过程转移到服务,以加快 性能

通过Web服务

访问数据将让您的应用程序更慢。另外,你正在增加另一个失败点。

没有什么比应用程序直接访问数据库更快。

规则的数据将会定期更改,甚至可能是 甚至每天多次更改。

没有前端技术可以承受这种变化的机会。

实现API/Web服务的最佳实践是希望创建新版本,而不是替换现有更改。你必须记住,维护多个版本需要很多工作。

您有两种选择 - WCF用于SOAP (和REST)或ASP.Net Web API for REST。

WCF是陡峭的学习曲线。 如果您对这两种技术都很陌生并且期限很紧,那么您可能需要使用ASP.Net Web API。