【问题标题】:How to share the web API controllers with microservice如何与微服务共享 Web API 控制器
【发布时间】:2016-11-05 19:42:16
【问题描述】:

我们有一个使用 ASP.Net 5 框架构建的现有 Web API。我们现在计划开发新的微服务。我们正在尝试尽可能重用现有 API 的代码。我们的旧 API(单体)或新的微服务将根据客户需求进行部署。

我们发现很难在单体 API 和微服务之间共享控制器。考虑使用“添加为链接文件”,但在控制器文件的情况下不起作用。还有其他方法可以共享控制器吗?

【问题讨论】:

    标签: c# asp.net-web-api microservices asp.net5


    【解决方案1】:

    我们正在尝试尽可能重用现有 API 的代码

    为什么要这样做?您是否将其视为潜在的节省时间?不要,它不会为你节省任何时间。您是否担心代码同时在两个地方?不要——服务应该是自治的,这意味着我们必须接受一定程度的冗余。

    我们发现很难在单片机之间共享控制器 API 和微服务

    这可能是一个信号,表明您不应该这样做。

    还有其他方法可以共享控制器吗?

    嗯,我想我们都同意控制器本身不应该被共享。但是,控制器可以(和should)简单地将调用处理委托给另一个依赖项,因此理论上您可以只获取依赖项并在类似的服务之间共享它。

    【讨论】:

    • 谢谢汤姆。我会按照你的建议去做。
    • 我要重复 Tom 的观点,不要在自主组件之间共享代码
    猜你喜欢
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 2019-12-06
    • 2010-11-21
    • 1970-01-01
    • 2018-10-08
    • 2013-09-06
    • 1970-01-01
    相关资源
    最近更新 更多