gpt4 book ai didi

rest - HATEOAS和微服务

转载 作者:行者123 更新时间:2023-12-04 11:36:53 25 4
gpt4 key购买 nike

在查看HATEOAS和微服务如何共存时,我遇到了一些麻烦。

让我们举个例子:

假设我们有一个购物车资源。
我们需要将产品快照放入其中,例如产品编号,产品价格;将商品添加到购物车时的当前价格快照,以及其他一些值。
实际的用例无关紧要,而只是想对当前的问题有所了解。

当我早些时候做过HATEOAS时,我会在购物车资源中放置一个链接到产品的链接或一个链接到特定产品的模板url。

这样,客户端仍然可以不知道资源URL。

但是在微服务领域,一个服务应该不了解其他服务。据我所知。

那么他们怎么能一起工作呢?

我对微服务的解释是,它们永远无法链接到除自身之外的任何其他东西,这几乎就是Self链接。

我在其他地方也发现了相同的问题,例如
https://groups.google.com/forum/#!topic/api-craft/YRkLFVY_zFc

使用诸如“宏服务”之类的将所有这些编织在一起的解决方案。
这似乎不是解决问题的干净方法。

[编辑]

我发现了有关该主题的更多信息:
https://github.com/Netflix/eureka
https://github.com/RestExpress/HyperExpress

可以使用某种工具为链接的资源添加数据看起来很不错,但是这让我认为,决定资源应该属于哪个链接的逻辑在哪里?
在公开资源的服务中?
在中央服务注册表中?

最佳答案

But in the microservice world, a service should have no knowledge of other services. AFAIK.



我认为这是您困惑的根源。我的理解是,出于软件开发的目的,服务不应依赖 带外信息与其他服务进行通信。这意味着服务不应该了解其对等方的内部情况,但是说它不应该了解其他服务是没有任何道理的。这与HATEOAS不冲突,实际上,它们是相辅相成的。

链接到其他服务没有问题。您还将如何从微服务构建宏服务?依靠带外信息存在一个问题。

关于rest - HATEOAS和微服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29303048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com