2016年5月11日,Pivotal宣布Spring Cloud最新版本正式發(fā)布(GA)。這是繼2016年3月的候選版本1(RC1)和2016年4月的候選版本2(RC2)之后的又一次發(fā)布。
Pivotal將這個(gè)版本的部分重要特性歸納如下:
支持Spring Boot 1.3.x和Spring Framework 4.2.x; Hashicorp Consul通過Spring Cloud Consul支持服務(wù)注冊(cè)/發(fā)現(xiàn)&配置; Apache Zookeeper通過Spring Cloud Zookeeper支持服務(wù)注冊(cè)/發(fā)現(xiàn)、配置,并支持Spring Cloud Cluster群首選舉; 通過Spring Cloud Sleuth抽象的兩個(gè)開箱即用的實(shí)現(xiàn)支持分布式跟蹤:一個(gè)支持logging(非常適用于日志收集器和像Logstash、Loggregator這樣的“多工器(multiplexers)”),另一個(gè)支持Twitter的Zipkin; Spring Cloud Netflix提供了Netflix Atlas Telemetry System、下一代Spectator Metrics庫(kù)以及最新版本的Eureka、Ribbon、Hystrix和Feign; Spring Cloud Bus現(xiàn)在是基于最新發(fā)布的Spring Cloud Stream; 通過Spring Cloud Cluster進(jìn)行集群群首選舉和鎖定; 將Spring Boot指標(biāo)導(dǎo)出到Amazon Cloudwatch,并原生支持Amazon RDS。Pieter Humphrey是Pivotal的產(chǎn)品營(yíng)銷咨詢經(jīng)理。近日,InfoQ有機(jī)會(huì)和他聊了一下,進(jìn)一步了解這個(gè)版本以及他們平臺(tái)的狀態(tài)。下面是我們的談話內(nèi)容。
InfoQ:Spring Boot每月的下載量將近400萬(wàn)次。它為什么發(fā)展的如此迅速?
Pieter Humphrey:在嘗試了Ruby和Node.js之后,Netflix認(rèn)識(shí)到,他們的應(yīng)用程序需要高性能、穩(wěn)定性以及JVM并發(fā),以便服務(wù)于流量的爆炸式增長(zhǎng),但是,他們?cè)贘ava中尋找恰當(dāng)?shù)腞AD工具以獲得所需要的開發(fā)速度時(shí)陷入了麻煩。如今,Spring社區(qū)大約30%都使用Boot,而且每天都有更多的企業(yè)從Spring Framework 3.x和舊版本升級(jí)。在我看來(lái),我認(rèn)為,如此多的企業(yè)選擇Java還有一些其他的原因,還包括像類型安全、Spring的庫(kù)生態(tài)系統(tǒng)、相對(duì)更大的Java社區(qū)等這些因素,當(dāng)然還有可移植性。回到Netflix的例子,微服務(wù)變遷的影響、企業(yè)級(jí)Java更高的生產(chǎn)力以及使用更新的云原生平臺(tái)的愿望是它發(fā)展如此迅速的原因。過去十年中,技術(shù)在縱深方向上真是發(fā)生了巨大的變化。
InfoQ:Java又回來(lái)了?
Pieter Humphrey:它是否離開過還要再議,在TIOBE編程語(yǔ)言排行榜上位次靠前就是有力的證明。Java SE從未像現(xiàn)在這么活躍,Java 8的采用率有力地證明了它的長(zhǎng)盛不衰。
InfoQ:現(xiàn)在已經(jīng)有許多Spring服務(wù)了。開發(fā)人員該如何選擇要使用的發(fā)現(xiàn)服務(wù)或路由庫(kù)?
Pieter Humphrey:對(duì)于哪種微服務(wù)棧最能滿足你的需求,是需要花時(shí)間和精力去研究的。Netflix、 HashCorp、Apache等都有優(yōu)缺點(diǎn)各不相同的不同組件。例如,Consul內(nèi)置了安全特性。它是一個(gè)輕量級(jí)的“輔助工具(sidecar)”,提供一個(gè)簡(jiǎn)單的REST API,因此,它更適合于多語(yǔ)言環(huán)境。它在一個(gè)工具里就提供了服務(wù)發(fā)現(xiàn)和配置功能。我們鼓勵(lì)Spring + CloudFoundry用戶了解下NetflixOSS,因?yàn)槲覀儸F(xiàn)在可以為他們做更多事情,但隨著時(shí)間推移,情況會(huì)發(fā)生變化。
InfoQ:Spring Boot和Spring Cloud引入了一種非常獨(dú)特的應(yīng)用構(gòu)建方式。在什么情況下,抽象會(huì)成為障礙?特別是在面對(duì)類似底層故障排除這樣的問題的時(shí)候?
Pieter Humphrey:抽象必須增加價(jià)值,否則就可以將它們視為障礙。沒有人可以為了框架而框架。不過,Boot和Cloud不只是抽象,它是一種介于常規(guī)與顯式配置之間的方法,因此,它部分地學(xué)習(xí)了常規(guī)方法。Spring Boot的Actuator報(bào)告當(dāng)然有用,我們還在致力于提高錯(cuò)誤質(zhì)量。分布式計(jì)算很難,不用說還是在一個(gè)碎片化/繁忙/噪音多的領(lǐng)域里。因此,從Maven Central上的下載量來(lái)看,許多Spring用戶都看到了這些抽象的價(jià)值:簡(jiǎn)化了整個(gè)程序空間,提供了更高級(jí)的API,不和單一的技術(shù)掛鉤。Spencer Gibb在Spring.io巴塞羅那會(huì)議上的演講非常有助于你了解更多的細(xì)節(jié)。
InfoQ:在這個(gè)版本的重要更新中(見上文),哪個(gè)特性最令你興奮?為什么?
Pieter Humphrey:這很難選,不過,此刻我會(huì)選擇Spring Cloud Sleuth/分布式跟蹤。
InfoQ:在下一個(gè)版本序列中,你們會(huì)致力于什么場(chǎng)景或技術(shù)的開發(fā)?
Pieter Humphrey:最大的精力將放在當(dāng)前技術(shù)和簡(jiǎn)化開發(fā)人員體驗(yàn)上:入門教程(本地開發(fā))、故障排除、測(cè)試、文檔。
關(guān)于作者
Pieter Humphrey有17年的計(jì)算機(jī)行業(yè)經(jīng)驗(yàn)。他有很深的技術(shù)背景,但喜歡與人共處,而不只是技術(shù)。Pieter在創(chuàng)業(yè)公司以及百萬(wàn)美元規(guī)模的小型公司工作過,大部分都是市場(chǎng)營(yíng)銷領(lǐng)域的。過去四年中,Pieter一直是Pivotal的產(chǎn)品營(yíng)銷咨詢經(jīng)理。在此之前,他在Oracle當(dāng)了四年的首席產(chǎn)品總監(jiān)。
查看英文原文:Spring Cloud Brixton.RELEASE Reaches General Availability