首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RESTful HTTP服务与用于后端通信的直接TCP或WebSockets

RESTful HTTP服务与用于后端通信的直接TCP或WebSockets
EN

Stack Overflow用户
提问于 2014-12-17 19:06:48
回答 1查看 5.8K关注 0票数 8

为什么现在的RESTful服务即使在后端通信中也如此流行,除了它是一个标准和简单的服务之外?

我永远不会为需要低延迟和/或高吞吐量的后端选择HTTP,主要是因为:

  1. HTTP使用单向请求响应模式,而不是全双工流.
  2. HTTP意味着数据包长度和其他信息,这是一种开销。

我可以在许多开源项目中看到RESTful web服务,声称它们适用于低延迟、高吞吐量的项目。例如,创建RESTful微服务、将重量轻的http-服务器嵌入服务器端应用程序非常流行。

作为另一种选择,我可以在TCP上使用WebSockets (当然是通过HTTP升级)。

我知道HTTP是如何在引擎盖下工作的,也知道底层TCP是如何工作的。但是,请解释一下,除了HTTP是一个时髦的词和简单,这就是为什么你应该使用一个,还有其他的优势吗?

EN

回答 1

Stack Overflow用户

发布于 2014-12-17 19:20:59

RESTful HTTP是一种成熟的技术,而WebSockets在2014年夏天才成为W3C的推荐。

一方面,新技术进入产品需要一段时间,因为人们不得不采用新技术,而且通常您也不希望仅仅为了拥有WebSockets而重写您的产品。

另一方面,更重要的是,RESTful、HTTP和WebSockets是完全不同的技术。RESTful HTTP是无状态的,因此您可以构建高度可伸缩的应用程序。而WebSockets则是双向的,因此端、服务器和客户端都可以触发通信。因此,在最后,您的决定应该基于这个场景。过去曾经有过RESTful HTTP是完美解决方案的案例,现在也是如此。另一方面,需要实时通信或服务器驱动事件的场景将从WebSockets中获益。

但重要的是:从现在开始,你有一个选择!

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

https://stackoverflow.com/questions/27532972

复制
相关文章

相似问题

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