0

似乎大多数 WSO2 DSS 文档都集中在公开现有数据源的用例上。

从头开始创建新服务时,您会使用 DSS 实现新的 CRUD 数据访问层,还是会使用基于标准的基于 java 的方法(例如 spring、hibernate 等)来实现数据访问层?对于新服务,这两种方法(DSS 与 Java)的优缺点是什么?

4

1 回答 1

1

IMO,这取决于开发和托管这项新服务的地点和时间。如果您是一个处理一个应用程序的单人商店,那么在任何一条路径上都没有区别。在开发时,你知道系统的进出,你知道你的数据访问代码应该写在哪里,你在数据库和应用程序之间传输什么样的数据,以及这些信息在你的应用程序中被使用到哪里。

这就是为什么有些人即使使用 10 英尺的杆子也倾向于不使用 Web 服务接触任何东西的原因之一。您正在引入额外的开销和复杂性,并且无法证明您为什么需要它。

假设您在有大量开发人员参与开发各种应用程序的地方工作,这些应用程序在某个时间点需要相互交谈并希望共享信息。在这种情况下,您可能有内部策略来规定您可以使用哪些库版本在应用程序中构建数据访问逻辑和其他业务功能。因此,在这样的环境中,当您引入新服务时,明智的做法是考虑可能的服务重用。当您开发一个新服务并在您的数据库表上添加一个 CRUD 接口时,当您的数据模型扩展时,您最终会得到很多服务。然后当你' 重用这些服务 一项操作可能涉及执行多个服务调用,这可能会产生低于标准的性能。因此,您最终将拥有另一个或两个复合服务,它通过 JDBC 执行其中几个数据库调用以提高性能。然后,如果你这样做,很快你就会得到重复的服务。

将这种情况与基于标准 Java 的方法进行对比,当您引入一项将影响多个现有系统的新服务时,您需要为所有这些系统编写代码以使用您的新服务。如果这些系统是使用您正在使用的相同版本的库(例如 Hibernate)编写的,那么您的生活会变得更加轻松。如果这些系统是由不同的人以不同的方式编写的,那么生活就会变得复杂。在这里,进行 Web 服务调用可能更容易。

于 2013-06-10T14:01:26.170 回答