Java 界最近發(fā)生了一件大事,Spring Cloud 官方宣布阿里開源?Spring Cloud Alibaba贱田,并推出首個預覽版缅茉。
據(jù)介紹,Spring Cloud Alibaba 由阿里開源組件和阿里云產(chǎn)品組件兩部分組成男摧,其致力于提供微服務一站式解決方案蔬墩,方便開發(fā)者通過 Spring Cloud 編程模型輕松開發(fā)微服務應用。
開源的消息引起了巨大的反響耗拓,Spring Cloud Alibaba 的到來拇颅,不僅引起了 Java 開發(fā)者的高度關(guān)注,也讓人們將目光聚集到了項目背后當下最炙手可熱的微服務架構(gòu)領(lǐng)域乔询。
目前使用 Spring Cloud 的第一選擇是 Spring Cloud Netflix樟插,它的領(lǐng)先地位不可撼動,而此次阿里開源的“原生國產(chǎn)”環(huán)境下的這一項目,是不是會對此帶來變革黄锤?而隨著越來越多的落地實踐搪缨,微服務架構(gòu)的弊端已逐漸顯露,此時阿里加碼該領(lǐng)域的這一大動作猜扮,背后有什么考量呢?
此外還有開發(fā)者關(guān)注度相當高的項目后期維護齿桃、Dubbo 是否又一次被拋棄等問題……我們第一時間采訪了阿里巴巴中間件高級技術(shù)專家姬望煮盼,希望能讓大家對 Spring Cloud Alibaba 這個項目短纵、對相關(guān)領(lǐng)域的發(fā)展與趨勢有更多的了解。
本文內(nèi)容較長香到,這里先提取幾個要點:
再也不會不明白 Spring XXXXXX 到底是什么
中國 Java 開發(fā)者的福音
微服務架構(gòu)領(lǐng)域變天
Dubbo 沒有被拋棄
下一代架構(gòu)不是流式架構(gòu)报破,而是 Serverless
云計算終將統(tǒng)治整個服務端架構(gòu)
明年 2 月 GA
Spring悠就?Spring Boot?Spring Framework充易?Spring Cloud?Spring Cloud Alibaba炸茧?Spring 全家桶在 Java 開發(fā)中是不得不提的稿静,雖然知名度很高、使用度高控漠,但是其實許多人就只是使用著框架绍妨,甚至對于什么是 Spring Cloud 都不甚了解,對上邊這些術(shù)語傻傻分不清楚毙驯。借這個機會灾测,請您給大家仔細地介紹一下吧。
在國內(nèi) Javaer 界铭段,單說?Spring這個詞序愚,其實并不具體指什么,它只是一個代號芬膝,具體代表的含義,是要看語境的锰霜。比如我說 Spring 那幫大神桐早,那這時候 Spring 指的就是?Spring 公司;再比如我說你們平時開發(fā)用 Spring 嗎友存,這時 Spring 一般指的其實是?Spring IOC爬立,而且大部分情況下万哪,我們說 Spring 指的都是 Spring IOC抡秆。
Spring IOC 是什么這里就不多解釋了儒士,相信大家都不陌生,而且诅福,這應該是最火的面試題之一吧拖叙。Spring Framework圍繞著 Spring IOC 與核心的?Spring AOP功能薯鳍,還實現(xiàn)了與諸多 J2EE 開發(fā)框架的整合,大大降低了企業(yè)級應用開發(fā)的難度崩溪,提高了效率。
幾年前很火的 SSH 框架就是一個典型的 Spring Framework 整合 Hibernate 和 Struts2 的例子觉既。當時瞪讼,學會 SSH 整合反惕,那可是一門手藝姿染,那復雜的配置文件、層出不窮的 Jar 包狡汉,絕對可以讓你眼花繚亂闽颇、欲罷不能兵多。所以,現(xiàn)在的 Javaer 是幸福的衅斩,因為?Spring Boot解決了這個問題怠褐。
Spring Boot 讓你可以引入一個 POM 依賴就實現(xiàn)所有 Jar 包的管理奈懒,也可以讓你一個配置文件、幾行簡單的配置就解決所有復雜的配置問題溜畅。Spring Boot 的宗旨就是讓用戶可以更簡單地開發(fā)基于 Spring Framework 搭建的應用极祸,不得不說,Spring Boot 完美地實現(xiàn)了它的宗旨龄寞。
至于?Spring Cloud汤功,它是在 Spring Boot 的基礎上滔金,增加了一堆微服務相關(guān)的規(guī)范,并對應用上下文(Application Context)進行了功能增強科阎。
既然 Spring Cloud 是規(guī)范忿族,那么就需要去實現(xiàn)道批,Spring Cloud Alibaba就是 Spring Cloud 微服務規(guī)范的一套實現(xiàn)。
總結(jié)起來就是:
Spring通常指 Spring IOC椭岩。
Spring Framework包含了 Spring IOC判哥,同時包含了 Spring AOP碉考,并實現(xiàn)與其它 J2EE 框架的整合。
Spring Boot是對 Spring Framework 的補充,讓框架的集成變得更簡單良蒸,致力于快速開發(fā) 獨立的 Spring 應用伍玖。
Spring Cloud是基于 Spring Boot 設計的一套微服務規(guī)范窍箍,并增強了應用上下文。
Spring Cloud Alibaba采用阿里中間件作為原料纺棺,實現(xiàn)了 Spring Cloud 的微服務規(guī)范祷蝌。
目前 Spring Cloud 規(guī)范已有 Spring Cloud Netflix 等實現(xiàn),那 Alibaba 這一套的主要區(qū)別與優(yōu)勢是什么米丘?
Spring Cloud Alibaba 的組件孵化自阿里巴巴內(nèi)部自用的中間件產(chǎn)品拄查,這些中間件經(jīng)歷過多次雙 11 的考驗(雙 11 是目前世界上最大最復雜的電商交易場景)棚蓄,具備超強的抗壓能力這點毋庸置疑癣疟。此外,Spring Cloud Alibaba 完整的原生中文文檔和本地化的開源服務將大大降低開發(fā)者的學習成本邪蛔,提高接入速率侧到,并降低后續(xù)的運維難度淤击。
具體到其中的各個組件來看:
Nacos
Nacos 基于阿里內(nèi)部配置管理和服務發(fā)現(xiàn)組件開源污抬,經(jīng)歷過多次雙 11 檢驗,支持超大規(guī)模集群矢腻,穩(wěn)定性和性能上值得信賴射赛。后續(xù)我們還會基于這套成熟的業(yè)務模型楣责,建設灰度發(fā)布聂沙、環(huán)境隔離初嘹、全鏈路壓測這些更高級的特性,將更多阿里在微服務實踐方面的大殺器輸出削樊。
Nacos Discovery
Nacos Discovery漫贞、Spring Cloud Netflix Eureka、ZooKeeper 和 Consul 都遵循了 Spring Cloud 服務發(fā)現(xiàn)的標準實現(xiàn)芍殖,也很好地適配了 Ribbon豌骏。相比之下隐锭,Nacos Discovery 有如下特點:
支持實時推送钦睡,達到秒級服務發(fā)現(xiàn)。
多層容災機制洒琢,盡量保證服務發(fā)現(xiàn)中心宕機不影響應用調(diào)用衰抑。
Nacos Config
Nacos Config 和 Spring Cloud Config荧嵌、ZooKeeper 與 Consul 一樣啦撮,都遵循了 Spring Cloud 配置標準實現(xiàn),但是依賴組件更少,使用更加簡單聘鳞,功能更加強大抠璃。
例如它無需 Spring Cloud Bus、MQ窿春,直接就可以實現(xiàn)配置的實時推送旧乞,而且推送狀態(tài)可查磅氨。支持數(shù)據(jù)回滾烦租、支持多種數(shù)據(jù)格式、完美支持中文挫以,最后還依賴多重容災機制確保配置服務端的故障不影響應用本身掐松。
RocketMQ
Spring Cloud 官方的 Spring Cloud Stream 框架屏蔽了底層消息中間件的處理锌杀,使用統(tǒng)一的編程模型進行編程糕再。目前官方只有 Kafka 和 RabbitMQ 的 Binder 實現(xiàn)突想。阿里巴巴的 RocketMQ?消息中間件,已經(jīng)成為了 Apache 的頂級項目袭灯,社區(qū)上也有很多人在咨詢什么時候能出 RocketMQ 的 Binder稽荧,而我們也認為這是非常有必要的工腋。
Sentinel
目前 Spring Cloud 官方推薦的斷路器是 Hystrix。Sentinel 是阿里中間件團隊開源的翁潘,面向分布式服務架構(gòu)的輕量級高可用流量控制組件拜马,主要以流量為切入點沐绒,從流量控制洒沦、熔斷降級申眼、系統(tǒng)負載保護等多個維度來幫助用戶保護服務的穩(wěn)定性。Sentinel 與 Hystrix 兩者具有一些共同特性巷蚪,但底層的實現(xiàn)方式不一致屁柏。
相比之下 Sentinel 有以下特性:
輕量級有送、高性能
多樣化的流量控制策略
系統(tǒng)負載保護和實時監(jiān)控與控制面板等塵燭寫 OSS 雀摘、SchedulerX 與 ARMS 的優(yōu)勢
SchedulerX
SchedulerX 是一套高可靠的分布式任務調(diào)度系統(tǒng)阵赠,支持海量任務秒級別調(diào)度清蚀,支持 Java、腳本榛搔、http 等多種任務類型践惑,提供分布式編程模型可以進行大數(shù)據(jù)跑批,接入簡單易用。
ARMS
ARMS 是一款?APM類的監(jiān)控產(chǎn)品穷娱,用戶可基于 ARMS 的前端監(jiān)控泵额、應用監(jiān)控或者自定義監(jiān)控携添,快速構(gòu)建實時的應用性能和業(yè)務監(jiān)控能力烈掠。
OSS
OSS 是阿里云提供的云存儲服務左敌,它具有與平臺無關(guān)的 RESTful API 接口,能夠提供 99.999999999%(11 個 9)的數(shù)據(jù)可靠性和 99.99% 的服務可用性哺哼。
Spring Cloud Alibaba 入駐了 Spring Cloud 孵化器取董,這個消息可以說是比較突然的茵汰,能不能介紹一下從最開始到今天進入孵化器的整個過程经窖,以及背后的心路歷程梭灿。
去年年末的時候堡妒,我們看到 Spring Cloud 子項目中有 spring-cloud-aws 和 spring-cloud-gcp 這些組件,它們可以提升 AWS 和 GCP 用戶在使用 Spring Boot 編程時的效率桑寨。
那時候我們想如果把阿里云的產(chǎn)品也集成到 Spring Cloud 生態(tài)中,那肯定也能增加阿里云上 Java 用戶的幸福感燥透,所以我們著手做了相關(guān)工作班套,最開始項目叫 spring-cloud-alibabacloud吱韭。
但是后來理盆,隨著阿里中間件全面擁抱開源猿规,服務發(fā)現(xiàn)和配置管理組件 Nacos坎拐、流量保護 Sentinel 這些重量級的中間件陸續(xù)開源出來,同時我們也發(fā)現(xiàn)開源社區(qū)在使用 Spring Cloud 已有實現(xiàn)的時候遇到這樣那樣的問題都伪。這個時候陨晶,我們覺得將這些經(jīng)過多次雙 11 檢驗的生產(chǎn)級別中間件接入到 Spring Cloud 生態(tài)會是一件更酷的事情先誉。于是我們將 Spring Cloud Alibaba 單獨成項褐耳,提交到了 Spring Cloud 官方铃芦。
目前我們發(fā)布了第一個版本,包含了 Nacos 和 Sentinel仁烹,以及阿里云的 OSS卓缰、ACM 和 ANS僚饭。隨著阿里開源的力度不斷加大胧砰,后續(xù)會有更多組件加入尉间。
Spring Cloud Alibaba 成為官方認證的新一套 Spring Cloud 規(guī)范的實現(xiàn)哲嘲,從多方面來講這意味著什么呢眠副?
我從以下幾個方面來講一講吧囱怕。
首先是彌補 Spring Cloud 原生實現(xiàn)在大規(guī)模集群場景上的局限性。Spring Cloud 規(guī)范的實現(xiàn)目前有很多毫别,比如 Netflix 有自己的一整套體系娃弓,Consul 支持服務注冊和配置管理,ZK 支持服務注冊等岛宦。每套實現(xiàn)或多或少都有各自的優(yōu)缺點台丛,或許大多數(shù) Spring Cloud 用戶很難體會到原生實現(xiàn)的局限性,無論是服務發(fā)現(xiàn)砾肺、分布式配置挽霉,還是服務調(diào)用和熔斷都不太適合大規(guī)模集群場景变汪,比如我們內(nèi)部也遇到 Eureka 性能問題侠坎。因此,阿里將自身的超大規(guī)模集群經(jīng)驗與強大的 Spring Cloud 生態(tài)整合裙盾,實現(xiàn)強強聯(lián)合硅蹦,相信對業(yè)界會產(chǎn)生積極的化學變化荣德。
另一個影響是我們覺得這可以造福中國的 Javaer。我們發(fā)現(xiàn)目前 Spring Cloud 的第一選擇 Spring Cloud Netflix 在國內(nèi)并不是有特別多的人精通童芹,而且它們的文檔都是英文的涮瞻,出問題后排查也比較困難。
Spring Cloud Alibaba 是一套國產(chǎn)開源產(chǎn)品集合假褪,后續(xù)我們會提供中文 reference 和一些原理分析文章署咽,這對于國內(nèi)的開發(fā)者是非常棒的一件事。
阿里巴巴的宗旨是“讓天下沒有難做的生意”生音,其實阿里的眾多 Javaer 一直以來也有一個宗旨宁否,那就是“造福中國的 Javaer”。不論是之前的 Dubbo 也好缀遍,還是前段時間的 Java 開發(fā)手冊也好慕匠,都很好地體現(xiàn)了我們的宗旨,如今域醇,我們拿出 Spring Cloud Alibaba台谊,繼續(xù)貫徹我們的宗旨。
還有一個方面是對于微服務架構(gòu)領(lǐng)域來說的譬挚。隨著微服務架構(gòu)日益普及锅铅,這方面的知識儲備也越來越重要,越來越迫切减宣,Spring Cloud Alibaba 的出現(xiàn)盐须,可以說是恰逢其時。而對于微服務這個領(lǐng)域來說漆腌,Spring Cloud Alibaba 的出現(xiàn)贼邓,也會讓這個圈子產(chǎn)生不小的化學反應。前段時間闷尿,有文章表示阿里有這么強勁的技術(shù)實力立帖,而且又是中文環(huán)境,后續(xù) Spring Cloud Alibaba 可能會替代掉 Spring Cloud Netflix悠砚,微服務領(lǐng)域要變天晓勇,我覺得這非常有可能。
有人要問灌旧,阿里這樣搞绑咱,那同樣深耕微服務領(lǐng)域的 Dubbo 算什么?前陣子才為它的復出歡呼雀躍啊枢泰,扔了嗎描融?
其實很多人都有一個誤解,認為 Dubbo 和 Spring Cloud 是二選一衡蚂,甚至對立的關(guān)系窿克,這里我們需要著重澄清一下骏庸。
聯(lián)系前邊講到的內(nèi)容,Spring Cloud 并不是等同于 Spring Cloud Netflix 的 Ribbon年叮、Feign具被、Eureka、Hystrix 這一套組件只损。而是抽象了一套通用的開發(fā)模式一姿,它的目的是通過抽象出這套通用的模式,讓開發(fā)者更快更好地開發(fā)業(yè)務跃惫。
但是這套開發(fā)模式運行時的實際載體叮叹,還是依賴于 RPC、網(wǎng)關(guān)爆存、服務發(fā)現(xiàn)蛉顽、配置管理、限流熔斷先较、分布式鏈路跟蹤等組件的具體實現(xiàn)携冤。
Dubbo 與 Spring Cloud 并不是競爭關(guān)系,Dubbo 作為成熟的 RPC 框架拇泣,其易用性、擴展性和健壯性已得到業(yè)界的認可矮锈。未來 Dubbo 將會作為 Spring Cloud Alibaba 的 RPC 組件霉翔,并與 Spring Cloud 原生的 Feign 以及 RestTemplate 進行無縫整合,實現(xiàn)“零”成本遷移苞笨。
在阿里巴巴的微服務解決方案中债朵,Dubbo、Nacos 和 Sentinel瀑凝,以及后續(xù)將開源的微服務組件序芦,都是 Dubbo EcoSystem 的一部分。我們后續(xù)也會將 Dubbo EcoSystem 集成到 Spring Cloud 的生態(tài)中粤咪。
所以總結(jié)一下就是:Spring Cloud 抽象了微服務編程通用模式谚中,而 Dubbo EcoSystem 是微服務的最佳實踐。
微服務架構(gòu)特別火寥枝,但是其實它也存在一些問題宪塔,最近有人就因此指出微服務架構(gòu)要完蛋了,并且否定了“Service Mesh 作為下一代微服務架構(gòu)”的觀點囊拜,同時說明像 Flink 這樣的流式架構(gòu)將成為新主流某筐。阿里此次通過 Spring Cloud Alibaba 加碼微服務,想必是不認同微服務架構(gòu)要結(jié)束的觀點冠跷。類比一下單體南誊、SOA身诺、Serverless 等架構(gòu),您覺得微服務架構(gòu)已經(jīng)發(fā)展到了一個什么樣的階段呢抄囚?請您具體分享一下霉赡。
【文章詳見:https://zhuanlan.zhihu.com/p/48036811】
我覺得微服務目前處在蓬勃發(fā)展的階段,Service Mesh怠苔、Serverless 其實都隸屬微服務架構(gòu)的范疇同廉。Service Mesh 是提供微服務的一種多語言、無依賴的解決方案柑司。Serverless 是提供微服務的一種簡化開發(fā)迫肖、自動化運維、資源分時復用的解決方案攒驰。
Service Mesh 和流式編程架構(gòu)都是很好的方向蟆湖,阿里集團里也有其它團隊在做這方面事情。
但是站在我們團隊的角度來看玻粪,這些都是尚未經(jīng)過大規(guī)模生產(chǎn)集群驗證的架構(gòu)隅津,而 Spring Cloud Alibaba 里面集成的這些組件都是在阿里內(nèi)部經(jīng)過多年雙 11 檢驗的。
說到底劲室,技術(shù)還是要為業(yè)務服務的伦仍,所以我們將這套技術(shù)集成到 Spring Cloud 生態(tài),方便開發(fā)者更好更快地開發(fā)業(yè)務很洋,業(yè)務永遠是最重要的充蓝。這是我們的想法。
具體到那篇文章中的觀點喉磁,我是這么看的:
微服務是 SOA 的一種實現(xiàn)
SOA 是面向服務的架構(gòu)谓苟,微服務也是面向服務架構(gòu)的一種實現(xiàn)。如果引用微服務領(lǐng)域的先驅(qū) Martin Fowler 的話协怒,那么“我們應該把 SOA 看作微服務的超集”涝焙。微服務是 SOA 的一種敏捷實現(xiàn),之前 ESB 是 IBM 對 SOA 一種不太完美的實現(xiàn)孕暇,在微服務這個概念被 Martin Fowler 大神創(chuàng)造出來之前仑撞,阿里巴巴使用 Dubbo、HSF 實現(xiàn)了自己的微服務體系妖滔,其實也是 SOA 的一種實現(xiàn)派草。
微服務解決的本質(zhì)問題是團隊分工
SOA 也好、微服務也好铛楣,解決的根本問題是團隊分工問題近迁,詳見康威定律,這是大型軟件發(fā)展的必然簸州,不因為人的喜好而改變鉴竭。當你讀懂康威定律歧譬,就會發(fā)現(xiàn)“服務拆分粒度難以準確把握”根本不是本質(zhì)問題。
你有幾個 2 pizza 團隊搏存,最好就拆成幾個微服務瑰步。舉一個現(xiàn)實的例子:只有一個開發(fā)人員時,盡量就做單體應用璧眠,不要沒事找刺激拆成 10 個微服務缩焦,最終這個開發(fā)人員還會把他合成一個。微服務要求縱向的 2 pizza 團隊(無數(shù)個小團隊责静,包含開發(fā)袁滥、測試、運維)灾螃,當然我們也實施過一些傳統(tǒng)大型企業(yè)题翻,但團隊還是處在橫向結(jié)構(gòu)的場景下(開發(fā)、運維腰鬼、測試各是一個團隊)嵌赠,拆分微服務讓他們很痛苦,尤其是運維團隊熄赡。
微服務帶來挑戰(zhàn)是分布式下開發(fā)姜挺、測試與運維的復雜性
永遠不會有銀彈,但是我們要接受歷史的潮流彼硫,并且適應它炊豪。微服務的出現(xiàn)解決了團隊分工問題,同時也會引入新的問題乌助,但是并不是“基礎設施的龐大復雜”溜在。
EDAS 其實已經(jīng)提供了大部分“基礎設施”陌知。微服務跟開車一樣他托,車(基礎設施)我們可以不去造,但是學會開車(微服務理念)是對單體應用開發(fā)仆葡、測試與運維最大的挑戰(zhàn)赏参。例如:單體應用開發(fā)者從來不會去想方法調(diào)用會失敗、會重試沿盅、要冪等把篓;單體應用測試人員不會去想幾十個應用我怎么一起集成測試;單體運維人員不會去想下游應用掛了對我有什么影響腰涧。意識到分布式下開發(fā)韧掩、測試與運維的復雜性,并掌握解決這些復雜問題的方法窖铡,才是更主要的疗锐。
微服務至少還能活 18 年
當然不能因為微服務存在問題坊谁,我們就說它將死。很多人說 Java 將死滑臊,從 2000 年就聽說過這個論調(diào)口芍,18 年過去了 Java 還活著,而且最近還搞得風生水起雇卷。
談到微服務將死鬓椭,那么這里聯(lián)系一下 Java,我認為微服務至少還要活 18 年关划,并且它也值得我做一輩子小染,我們會提供完善的基礎設施(車),提供完善的最佳實踐(教練)祭玉,幫助開發(fā)者享受微服務(開車)帶來的好處氧映。
下一代架構(gòu)是 Serverless
此處提到的 Serverless != FaaS,Serverless 包含底層中間件的 Serverless 及服務本身 Serverless脱货,而 FaaS 只是其中一種比較簡單的實現(xiàn)岛都。那篇文章中提到的 Flink 跟 FaaS 實際上并無本質(zhì)區(qū)別,但是本身商業(yè)化比 FaaS 差得比較大振峻。
針對文中各個“流式架構(gòu)優(yōu)勢”論證點的具體分析如下:
原文:服務端開發(fā)人員無需再關(guān)注系統(tǒng)性能臼疫,Slink 集群可以用容器動態(tài)擴容,Slink 集群也可以動態(tài)調(diào)整某個業(yè)務的節(jié)點數(shù)量扣孟。
性能是開發(fā)人員必須關(guān)注的指標烫堤,開發(fā)人員只是不需要關(guān)注節(jié)點擴縮,F(xiàn)aaS 做得更好凤价,甚至可以做到無流量時節(jié)點不駐留鸽斟。
原文:服務端開發(fā)人員無需再關(guān)注系統(tǒng)可靠性,Slink 集群管理每個節(jié)點利诺,包括調(diào)度富蓄、重啟、狀態(tài)管理等慢逾。
FaaS 節(jié)點的自動故障轉(zhuǎn)移立倍。
原文:服務端開發(fā)人員無需再考慮系統(tǒng)拆分,因為系統(tǒng)已經(jīng)拆分到單條業(yè)務的粒度了侣滩,業(yè)務發(fā)展和變化口注,不會導致架構(gòu)變化,只需要調(diào)整業(yè)務處理流圖就可以了君珠。
理想很豐滿寝志,現(xiàn)實很骨感,阿里有個團隊嘗試了 FaaS 之后,馬上退回去了材部,復雜業(yè)務邏輯不是拖拽那么簡單就可以解決悠菜。單體應用的代碼理論上也可以寫成無數(shù)個小方法,拖拽一下就可以了败富,目前小部分銀行系統(tǒng)小部分邏輯是這樣實現(xiàn)的悔醋,但是為什么不能大規(guī)模推廣?這是業(yè)務復雜性或多變性導致的兽叮,所以 FaaS 也很難成功芬骄。FaaS 所謂的方法級別的拆分,本質(zhì)跟微服務接口 API 定義無本質(zhì)區(qū)別鹦聪,所謂的編排账阻,目前看只適合于簡單業(yè)務邏輯的控制。
原文:Slink 可以支持多個業(yè)務運行泽本,資源可以做到最大程度的共享淘太。
FaaS 可以做到不運行的邏輯不加載规丽,做到分時復用赌莺,F(xiàn)link(Slink) 做不到。
原文:幾乎大部分中間件挎扰,例如消息隊列巢音、全鏈路跟蹤官撼、配置中心、降級系統(tǒng)等都可以去掉燥狰,Slink 平臺可以內(nèi)置這些功能斜筐。
AWS FaaS 底層已經(jīng)提供了 Serverless 的各種服務蛀缝,目前看 Flink 并未提供。
原文:運維基本上維護 Slink 平臺即可屈梁,業(yè)務無需運維維護。
AWS FaaS 不需要維護煞抬,AWS 會幫你維護革答。
原文:Slink 可以支持多語言,不再要求服務端開發(fā)統(tǒng)一技術(shù)棧途茫。
FaaS 可以是任意語言溪食,已經(jīng)商業(yè)化。
總結(jié)一下栅组,實際上 Serverless 解決的本質(zhì)問題是以下幾個方面:
運維復雜性
開發(fā)復雜性
資源的分時復用
Serverless 雖未完全解決開發(fā)復雜性枢析、測試復雜性登疗,但足以成為下一代架構(gòu)。Serverless 開發(fā)基礎還是微服務断傲,Java 開發(fā)人員還是會繼續(xù)使用 Spring Cloud智政,可以認為 Serverless 是微服務的有益補充续捂。
另一方面,我認為劫拗,不管什么架構(gòu)矾克,云計算終將統(tǒng)治整個服務端架構(gòu)。
我們可以看到酒繁,現(xiàn)階段云計算已經(jīng)解決了 IaaS 層的問題州袒,現(xiàn)在初創(chuàng)公司起步的時候,都習慣在云上直接購買機器洗做,不會再選擇傳統(tǒng)的找機房租機柜的形式彰居,省去了一大堆煩惱陈惰,極大地提高了效率,同時經(jīng)濟成本更低井辆。
再往上層看溶握,數(shù)據(jù)庫這個層面睡榆,比如人們已經(jīng)習慣購買云上的 RDS,開發(fā)者無需關(guān)心分庫分表塘揣,也不需要專業(yè)的 DBA 進行數(shù)據(jù)庫運維宿崭,因為 RDS 后端已經(jīng)自動處理分庫分表和水平擴容葡兑,并且有專業(yè)的數(shù)據(jù)庫人員幫忙運維和保證 SLA,只需要根據(jù)使用量按量付費即可吆鹤。
但是在 PaaS 層和 SaaS 層我們做的還不夠好檀头,我們希望在不久的將來岖沛,中間件能力也能直接在云上輸出婴削,那時候微服務的開發(fā)者們無需再關(guān)心如何部署運維服務注冊中心、配置中心嗤朴、消息隊列服務雹姊,只需要使用標準的編程模型衡楞,開箱即用瘾境,這可以最大化地提升開發(fā)效率迷守,快速實現(xiàn)業(yè)務變更和推進。
對于開發(fā)者普遍擔憂的開源項目后續(xù)維護情況凯力,有什么計劃礼华?
從一開始就放在 Spring Cloud 孵化器里已經(jīng)表明我們對開源的態(tài)度卓嫂,社區(qū)生態(tài)前期雖然是阿里巴巴主導晨雳,但是我們非常歡迎更多人一起參與進來餐禁,一起把這個項目建設得更好,無論是大的 feature氧吐,還是小的 bug筑舅,甚至是文檔的糾正和完善翠拣,都能對這個開源項目產(chǎn)生很大的幫助误墓。
接下來我們會整合開源的 Dubbo蛮粮、RocketMQ然想,阿里云上 ARMS又沾、SchedulerX熙卡、SMS驳癌、VMS颓鲜、SLS 等組件甜滨。隨著阿里開源力度的不斷加強衣摩,我們還會接入包含分布式事務在內(nèi)的更多開源組件艾扮。
Spring Cloud Alibaba 將在明年 2 月發(fā)布第一個 GA 版本泡嘴,于 Spring Cloud H 版本從孵化器畢業(yè)。
嘉賓介紹
姬望(彭文杰)磺箕,阿里巴巴中間件高級技術(shù)專家奖慌,前微課網(wǎng) CTO松靡,前衛(wèi)生部考試系統(tǒng)總架構(gòu)師击困,專注于微服務領(lǐng)域阅茶,曾擔任 EDAS 產(chǎn)品開發(fā) TL,目前負責 Spring Cloud Alibaba 開源撞蜂。
Spring Cloud Alibaba 團隊包含 6 名成員侥袜。阿里中間件擁有 Apache Dubbo浦旱、Apache RocketMQ 等頂級開源項目颁湖;支持世界最大最復雜的電商交易場景——雙11例隆;有基于每天萬億次調(diào)用的數(shù)據(jù)智能決策系統(tǒng)镰禾。