向微服务发送 post 请求时的最佳实践

Best practice when sending a post request to microservice

我使用 Spring 构建了一对相当简单的微服务。它由具有 ProductRepository 的主要服务和具有按类别包含产品折扣的 DiscountRepository 的折扣服务组成。

当我调用主服务通过 id 获取产品时,它会提取产品详细信息,然后调用折扣服务并获得折扣价。然后将其发送回主服务,添加到产品详细信息 dto 并与其余产品详细信息一起呈现给客户。

我的问题是:发送 post 请求以更新 DiscountRepository 的最佳做法是什么?我应该通过主服务发送还是直接调用折扣服务?

我很欣赏所有这些都可以在一个微服务中完成,但我正在练习使用@Feignclient 连接多个微服务,因此提出了这个问题。

干杯!

没有一个适用的“最佳实践”;你将不得不对你打算如何操作你的 API 做出判断。

例如,您可能决定拥有一个管理所有内容的“店面”API,在这种情况下,/discounts 请求可能会转发到折扣微服务。

或者,您可能会决定“商店管理员”是一个单独的问题,并且完全在您的应用程序域内运行,没有 public 访问权限。在这种情况下,您不会转发 /discounts,而是让客户端或管理微服务直接调用 Discounts。

哪种方法更合适取决于您的业务优先级。