我们有一个功能供同一服务器上的多个不同应用程序(客户端)使用。它最好被建模为服务,有一个后端数据库,并且在任何时候都只会有一个版本的功能和数据库在使用。
到目前为止,我们采用了简单的 DLL 重用,其功能、配置文件和依赖项部署在任何使用它的地方。因为现在必须在多个地方进行任何更改,所以在创建新版本的功能或新客户想要使用它时,这种方法很痛苦。
我们想知道是否有更好的方法来做到这一点,并提出了两种可能的替代方案。
将 DLL(和依赖项)放入 GAC。那么问题是如何配置组件。由于客户端对配置不感兴趣,我们倾向于将配置文件存储在服务器上的硬编码路径中。
将功能发布为内部(基于 REST)服务。使用防火墙的内部客户端可以访问它。
正如我们所看到的,#1 的优点似乎是性能和可能的安全性,而#2 可以被视为设置更简单。
我们在这里遗漏了什么重要的东西吗?以前有没有人遇到过类似的情况并想分享一些见解?