您说了,我们听了:《Spring 2020 现状报告》来了!
回到七月,Spring 团队就一系列与 Spring 相关的主题征求了您的意见。哇!多么热烈的回应!
感谢全球 1024 名开发者、架构师和经理抽出宝贵时间完成问卷。我们对数据进行了处理、筛选和整合,将最引人入胜的见解提炼到《Spring 2020 现状报告》中。
感谢所有完成问卷的人。我们期待将这份报告打造成一项年度盛事,记录我们社区的成长、成功和演变。
回到七月,Spring 团队就一系列与 Spring 相关的主题征求了您的意见。哇!多么热烈的回应!
感谢全球 1024 名开发者、架构师和经理抽出宝贵时间完成问卷。我们对数据进行了处理、筛选和整合,将最引人入胜的见解提炼到《Spring 2020 现状报告》中。
感谢所有完成问卷的人。我们期待将这份报告打造成一项年度盛事,记录我们社区的成长、成功和演变。
“Spring 2020 现状”报告将很快发布,该报告基于全球 Spring Boot 开发专家的观点和经验。如果您愿意花 15 分钟完成问卷,您将成为第一批收到问卷报告和其中包含的见解的人。请随时将此邮件分享给您的 Spring 开发同事。问卷将于七月底截止。
感谢您与我们分享您的想法和经验!Spring 团队
阅读时间:约 6 分钟 编码时间:约 20 分钟
如果您一直在关注我的 RSocket 系列文章,您应该已经学会了如何使用 Spring Boot 构建客户端-服务器应用程序。在今天的练习中,您将学习如何为您的 RSocket 应用程序添加安全性。
使用 Spring Security 可以极大地简化保护 RSocket 应用程序的任务。Spring Security 是任何生产应用程序必备的模块。它允许您轻松插入许多不同的身份验证提供程序,并根据每个用户的身份限制他们对应用程序的访问以及…
阅读时间:约 7 分钟。 编码时间:约 20 分钟。
如果您一直在关注我关于 RSocket 的系列文章,您会多次听到我提到“客户端和服务器”。但是,对于 RSocket 而言,客户端和服务器之间的界限是模糊的。使用 RSocket,服务器可以向客户端发送消息,客户端也可以像服务器一样响应这些请求。
事实上,RSocket 文档不使用“客户端”或“服务器”这些术语。文档使用“请求者”和“响应者”这些术语代替。在 RSocket 中,任何组件都可以充当请求者,任何组件都可以充当响应者,甚至两者兼而有之…
阅读时间:约 6 分钟。练习时间:约 20 分钟。
如果像我一样,您的 RSocket 之旅刚刚开始,请查阅RSocket 协议背后的动机。这份简短但富有洞见的文档包含一条让我深有共鸣的信息——“不匹配的抽象会增加系统开发成本”。
从软件设计的角度来看,RSocket 的四种交互模型提供了显著的优势。这意味着我们可以为每个用例使用正确的交互模型来建模组件之间的通信。这种更高效的模型…
时间:约 15 分钟。
在本系列的先前文章中,您尝试了使用 Spring Boot 和 RSocket 进行请求-响应和即发即弃的消息传递。这次您将尝试 RSocket 另一种全新的消息模型——请求流。
在本练习中,您将学习如何使用传统的 “客户端请求服务器流” 方法来传输数据流。
到目前为止,我还没提到的一点是 RSocket 允许您双向使用其消息传递模型。因此,如果您想使用不太常见的 “服务器请求客户端流” 模型,这对 RSocket 来说不是问题。此外,还有许多非 Java 的 RSocket 实现可供选择,包括 Go、Javascript 和 .Net——这对于包含…的架构来说是理想的选择
时间:约 15 分钟。
一些正在阅读此文章的开发者到现在为止已经使用 HTTP 多年了。他们中的大多数人也会知道,如果您想将 HTTP 与其他消息传递模型(例如即发即弃)一起使用,有时必须使用巧妙的变通方法,例如 Stackoverflow 上发布的这种方法。那是因为 HTTP 是一个请求-响应协议。它要求发送请求并接收响应。它没有单向消息且没有任何形式的响应的概念。
RSocket 采用了不同的方法。RSocket 在 TCP 等传输层之上定义了一个新的协议层…
时间:约 15 分钟。
在上一篇文章中,您了解了 Spring Boot 如何简化编写 RSocket 服务器的任务。但是 RSocket 客户端呢?在本文中,您将学习如何编写自己的 RSocket 客户端,然后使用这个新客户端向您的 RSocket 服务器发送请求-响应消息。让我们开始吧!
本教程使用 Linux shell。有关如何在 Windows 上运行 Linux shell 的详细信息,请参阅这篇 Microsoft 教程。
编写自己的代码很有趣,因此对于您的 RSocket 客户端,让我们从头开始。
如果这让您觉得太麻烦,或者您现在没有时间,那么您可以在演示代码库的 rsocket-client 文件夹中找到代码。
...
时间:约 15 分钟。
在多样化的微服务世界中,HTTP 是代理间通信的无可争议的领导者。它成熟、稳定,无处不在。但在某些情况下,HTTP 请求-响应可能会很繁琐。如果您需要超出传统请求-响应的通信模式,例如即发即弃或流式传输怎么办?如果您想双向发送消息怎么办?
使用 HTTP 有办法实现这一点,但这并非该协议设计的初衷。许多解决方案都伴随着额外的权衡或缺点。此外,也没有明确的规则说明…