序言
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
在 IT 世界,今天的极限就是明天的大门。 在过去的 50 年里,IT 世界不断发展,孜孜不倦,始终在挑战极限。 这些变化不仅归功于技术进步,也归功于我们这些消费者。 作为消费者,我们不断对每天与之交互的软件提出更高的要求。 此外,我们与软件的交互方式也完全改变了。 我们的生活离不开移动应用程序和设备,现在也能接受整天接收通知。 物联网(IoT)是一个新兴市场,有望带来更多创新,不间断地增加事件和数据处理数量。 Cloud 和 Kubernetes 不仅改变了我们的使用方式,还从根本上改变了我们设计、开发、部署和维护应用程序的方式。
但不要误解,所有这些革命都是有代价的。 它们在带来新用途和新应用的同时,也带来了巨大的复杂性。 如今,大多数软件系统都是分布式系统。 而分布式系统很难设计、构建和运行,尤其是在我们需要实现这些新的现代应用的规模上。 我们需要处理故障、异步通信、不断变化的拓扑结构、资源的动态可用性等等。 虽然云承诺提供无限的资源,但资金是一个限制因素,提高部署密度,即在更少的资源上运行更多的资源,成为一个严格的问题。
那么,"反应式 "又是什么呢? 它不是你在代码中使用的一个库,也不是一个神奇的框架。反应式"是一套原则、工具、方法论和框架,可用于构建更好的分布式系统。 好到什么程度? 这取决于系统,但正如《反应式宣言》中所解释的,遵循 "反应式"原则的应用程序接受分布式系统的挑战,并关注弹性、恢复力和响应能力。
在本书中,我们使用大写R的名词 "反应式"(Reactive)来聚合反应式领域的各个方面,如反应式编程、反应式系统、反应式流等。 通过本书,你将了解反应式将如何帮助我们面对这些新的关注点,以及它如何适应云环境。 阅读本书后,你将能够构建反应式系统--弹性的、适应性强的、事件驱动的分布式系统。
谁应该阅读这本书?
本书的目标读者是中高级 Java 开发人员,最好能熟练掌握 Java;不过,也不需要事先了解反应式编程甚至反应式的一般知识。 本书中的许多概念与分布式系统有关,但也不需要熟悉分布式系统。
反应式系统通常依赖于 Apache Kafka 或高级消息队列协议(AMQP)等消息代理。 本书介绍了了解此类代理如何帮助设计和实施反应式系统所需的基本知识。
有三个不同的群体可以从这本书中受益:
-
构建云本地应用程序或分布式系统的开发人员
-
希望了解反应和事件驱动架构作用的架构师
-
听说过反应式并希望更好地了解它的好奇开发人员
通过本书,你将开始一段了解、设计、构建和实施反应式架构的旅程。 你不仅能了解它如何帮助构建更好的分布式系统和云应用程序,还能看到如何使用反应式模式来改进现有系统。
Quarkus 怎么办?
细心的读者一定会注意到本书的副标题中提到了 Quarkus。 但是,到目前为止,我们还没有提到过它。Quarkus是专为 Cloud 量身定制的 Java 栈。 它使用构建时技术来减少应用程序的内存使用量,并提供快速的启动时间。
但是,Quarkus也是一个反应式堆栈。 其核心是一个反应式引擎,能够创建并发和弹性应用程序。 Quarkus还提供了构建分布式系统所需的所有功能,这些系统能够适应波动的负载和不可避免的故障。
在整本书中,我们使用 Quarkus 来演示反应式方法的好处,并介绍各种模式和最佳实践。 如果你没有相关知识或经验,也不要惊慌。 我们将陪伴你一路前行,在每一步都为你提供指导。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access