Building Reactive Microservices in Javajava
CHAPTER 1 介紹react
這篇文章是面向對微服務和分佈式應用感興趣的開發者和架構師,這裏不解釋分佈式系統基本原理,而是關注於用響應式構建有效的微服務系統帶來的好處。微服務可視爲模塊化思想的延伸:程序之間的鏈接經過消息傳遞,而不是經過直接的API調用,這樣可用於分佈式環境中的不一樣服務。爲何微服務這麼流行?這基本上有兩個緣由組合:雲計算和快速拓展。雲計算使部署不少微服務變得方便,拓展的須要也必需要這麼作。git
在這個文章中,咱們將看 Eclipse Vert.x(http://vertx.io) 能夠用於構建響應式微服務系統。Vert.x 是用於構建響應式分佈系統的工具集。Vert.x 是很是靈活的,由於這是一個工具集,因此你能夠構建簡單的網絡服務,現代web應用,處理大規模消息系統,REST服務,還有明顯的微服務。這給了Vert.x 極大的可塑性,一個大的社區,還有充滿活力的生態系統。Vert.x在變得流行以前已經極大地促進了微服務,在開始的時候,Vert.x被定製爲構建分佈式自治服務的應用。使用Vert.x構建響應式系統的原則(http://reactivemanifesto.org),他們是相應快速的,靈活的,快速恢復的,使用異步消息的做用的。github
這裏不單單侷限於Vert.x 和微服務,關注微服務系統的整個運行環境和介紹許多須要用到的工具來獲取渴望的結果,在這個旅行中,咱們將會學到:web
Vert.x是什麼,咱們怎麼使用微信
響應式意味着什麼,響應式的微服務是什麼網絡
怎麼實現微服務,使用HTTP 或 消息架構
構建響應式微服務的模式異步
怎麼在虛擬或者雲環境部署微服務分佈式
文章中的代碼能夠在github中獲取:https:// github.com/redhat-developer/reactive-microservices-in-java
準備環境
Eclipse Vert.x 要求 Java 8,文章中多個例子都使用了,咱們使用 Apache Maven構建,須要肯定已經環境已經準備好:
JDK 1.8
Maven 3.3+
A command-line terminal (Bash, PowerShell, etc.)
不是強制性的,可是咱們建議IDE例如Red Hat Development Suite (https://developers.redhat.com/products/ devsuite/overview)。在最後一章內容,咱們會使用OpenShift,在Kubernetes(https://kubernetes.io)技術構建容器內的微服務。在本地搭建OpenShift,咱們須要Minishift (https://github.com/minishi /minishi ) 或者 the Red Hat Container Development Kit (CDK) v3。你能夠下載CDK(https://developers.redhat.com/products/cdk/download)
讓咱們開始吧!
原文地址:
https://developers.redhat.com/promotions/building-reactive-microservices-in-java/
有什麼討論的內容,能夠發我微信公衆號: