【问题标题】:REST Resource look up serviceREST 资源查找服务
【发布时间】:2014-01-30 17:32:23
【问题描述】:

想象一个应用程序,其中存在多个具有不同资源的 RESTFUL 服务器。

当客户端发出资源请求时,当前会进行阻塞调用,以便将资源请求从服务器中继到服务器,直到在某个服务器上找到资源。这是非常耗时的。现在所有的客户端都在受限的环境中运行,服务器的功能中等。

有没有办法进行 REST 资源查找服务以避免长时间阻塞调用?

【问题讨论】:

    标签: rest lookup


    【解决方案1】:

    客户端应该知道在哪里寻找资源,而不是在一个快乐的流程中中继。因此,构建在客户端中获取资源的逻辑。

    解决方案 1: 客户端 A 有一个所有资源服务器的列表,并且有一个目录可以知道哪个资源在哪个服务器上。

    解决方案 2: 客户端 A 什么都不知道,因此它将查询进行查找的代理服务器 B。此服务器 B 有一个目录,用于将特定资源映射到特定服务器。

    然后服务器 B 将根据资源查询资源服务器 C/D/E/F 等。他们将响应服务器 B。

    服务器 B 将请求的资源发送给客户端 A

    更新 1: 由于您无法控制您的客户端,请使用解决方案 2,其中 B 充当与您的资源服务器相关的客户端。如前所述,要么使用每个特定资源指向特定服务器的字典,要么使用consistent hashing。由于我不知道您使用的是什么语言,我不知道是否有现成的库供您使用。但是有 so many already,所以它可能会满足您的需求。

    【讨论】:

    • 我想准确地构建“在哪里看”服务。
    • 更新答案。这是你的意思吗?
    • 解决方案 1 不适合我,因为客户资源非常有限。解决方案 2 是我一直在寻找的,但我想要是否已经有可以现成使用的东西。建立在 DHT 上的 REST
    • 在不同的语言中有很多实现一致性哈希的方法。对服务器 B 使用具有一致散列的解决方案 2(与资源服务器相关的客户端)
    猜你喜欢
    • 2018-07-13
    • 2017-03-12
    • 2013-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-08
    • 2016-08-07
    相关资源
    最近更新 更多