首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Restful服务可靠性

Restful服务可靠性
EN

Stack Overflow用户
提问于 2015-07-26 19:57:12
回答 1查看 47关注 0票数 1

我正在开发Restful服务,我们将在数据库中插入/更新新记录。

由于REST使用HTTP进行通信,而且HTTP不可靠,我担心在连接失败时可能不会将请求发送到服务器。

我在链接中发现的一个建议是:“如果连接失败,请从客户端重试一次。”但我们无法控制客户端应用程序。

其他解决方案是实现诸如RabbitMQ/JMS这样的消息传递系统,以确保可靠性。

我还在下面的链接中发现,添加会话状态可以提高可靠性。我无法理解这是如何发生的,更重要的是,一个好的restful服务不是总是无状态的吗?

因此,我要总结我的问题:

  1. 要实现可靠性,消息传递系统是最好的方法吗?
  2. 会话管理如何帮助我实现可靠性?
EN

回答 1

Stack Overflow用户

发布于 2015-07-26 20:05:35

消息传递可以帮助您,只要您在收到插入或更新信息的命令时不执行任何处理,因为您需要立即将命令放入队列中。此解决方案通常会增加相当大的复杂性,因为您需要在处理完命令时异步通知客户端(它是成功的还是失败的?还是我没有把结果寄出去?)

会话管理?为了可靠?从未听说过:)。Restful服务通常是无状态的..。所以这里没有会议!

另一个选项(但取决于客户端如何与您集成)是允许客户端生成要存储/更新的项的if,在这种情况下,如果它们返回错误,但您已经成功地处理了命令,客户端可以重试,并且会发生相同的更新。您可以将其与版本控制结合起来,以防止过时的更新晚到。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31641309

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档