用Java构建响应式微服务1-介绍

用Java构建响应式微服务

这本书是写给对开发微服务和分布式应用感兴趣的开发人员和架构师,它并不阐述分布式系统的基础理论,而是聚焦于响应式对于构建高效的微服务系统的优势。微服务可以视为积木概念的拓展:程序通过消息传递来沟通、而不是直接调用API,所以他们能够分布在多个服务中。为什么微服务如此流行?主要归因于两个因素的结合:云计算和快速伸缩的需要。

云计算使得更方便部署成千个小服务,可伸缩性使得它成为必需。

在这本书里,我们将看看Eclipse Vert.X (http://vertx.io)怎样被用来构建响应式微服务系统。Vert.X是一个构建响应式分布式系统的开发包。Vert.X是非常灵活的。因为它是一个开发包,

你能够构建简单的网络程序,web应用,一个包含了大量消息、REST服务---显而易见地---微服务的系统,这给了Vert.X更流行,庞大的社区,生机勃勃的生态系统。Vert.X促进了微服务,它变得如此流行。从一开始,Vert.X被专门用来构建分布式的、自治的服务。用Vert.X开发的系统是基于响应式系统准则(http://reactivemanifesto.org)的。他们是可响应的、有弹性的、可恢复的、用异步消息交互的。

这本书超越了Vert.X和微服务。它关注微服务系统运行的环境,介绍许多需要关注的工具。在这个旅程中,我们将学习:

. Vert.X是什么,怎样用它

. 响应式意味着什么,响应式微服务是什么

. 怎样用HTTP或者消息实现微服务

. 构建响应式微服务系统的模式

. 如何在虚拟机或云环境中部署微服务

这本书上出现的源代码你可以从https://github.com/redhat-developer/reactive-microservices-in-java获得。


准备环境

Eclipse Vert.x需要Java8,在这本书,我们提供了不同的例子,我们将用Apache Maven来做build。确信你预先安装了:

. JDK1.8

. Maven3.3+

. 命令行终端(Bash,

PowerShell等等)

即使不是必需的,我们建议用一个IDE比如Red Hat 开发套件(https://developers.redhat.com/products/devsuite/overview)。在最后一章,我们用OpenShift,一个基于Kubernetes

(https://kubernetes.io)的、运行容器化微服务的容器平台。本地安装OpenShift,我们推荐Minishift (https://github.com/minishift/minishift)或者Red Hat容器开发包(CDK V3). 您可以从https://developers.redhat.com/products/cdk/download下载。让我们这就开始。

你可能感兴趣的:(用Java构建响应式微服务1-介绍)