| 企服解答
微服務(wù)框架有Spring Boot、Spring Cloud、Dubbo、Dropwizard、Akka等。
微服務(wù)框架有哪些
1、Spring Boot
Spring Boot的設(shè)計(jì)目的是簡(jiǎn)化新Spring應(yīng)用初始搭建以及開(kāi)發(fā)過(guò)程,2017年有64.4%的受訪者決定使用Spring Boot,可以說(shuō)是最受歡迎的微服務(wù)開(kāi)發(fā)框架。利用Spring Boot開(kāi)發(fā)的便捷度簡(jiǎn)化分布式系統(tǒng)基礎(chǔ)設(shè)施的開(kāi)發(fā),比如像配置中心、注冊(cè)、負(fù)載均衡等方面都可以做到一鍵啟動(dòng)和一鍵部署。
2、Spring Cloud
Spring Cloud是一個(gè)系列框架的合計(jì),基于HTTP(s)的RETS服務(wù)構(gòu)建服務(wù)體系,Spring Cloud能夠幫助架構(gòu)師構(gòu)建一整套完整的微服務(wù)架構(gòu)技術(shù)生態(tài)鏈。
3、Dubbo
Dubbo是由阿里巴巴開(kāi)源的分布式服務(wù)化治理框架,通過(guò)RPC請(qǐng)求方式訪問(wèn)。Dubbo是在阿里巴巴的電商平臺(tái)中逐漸探索演進(jìn)所形成的,經(jīng)歷過(guò)復(fù)雜業(yè)務(wù)的高并發(fā)挑戰(zhàn),比Spring Cloud的開(kāi)源時(shí)間還要早。目前阿里、京東、當(dāng)當(dāng)、攜程、去哪等一些企業(yè)都在使用Dubbo。
4、Dropwizard
Dropwizard將Java生態(tài)系統(tǒng)中各個(gè)問(wèn)題域里最好的組建集成于一身,能夠快速打造一個(gè)Rest風(fēng)格的后臺(tái),還可以整合Dropwizard核心以外的項(xiàng)目。國(guó)內(nèi)現(xiàn)在使用Dropwizard還很少,資源也不多,但是與SpringBoot相比,Dropwizard在輕量化上更有優(yōu)勢(shì),同時(shí)如果用過(guò)Spring,那么基本也會(huì)使用SpringBoot。
5、Akka
Akka是一個(gè)用Scala編寫的庫(kù),可以用在有簡(jiǎn)化編寫容錯(cuò)、高可伸縮性的Java和Scala的Actor模型,使用Akka能夠?qū)崿F(xiàn)微服務(wù)集群。
| 拓展閱讀
微服務(wù)具有富有成效的生產(chǎn)團(tuán)隊(duì)、更快的部署、錯(cuò)誤和故障隔離、安全監(jiān)控、兼容CI / CD和敏捷、質(zhì)量改進(jìn)、可擴(kuò)展性七大優(yōu)勢(shì)。
1、富有成效的生產(chǎn)團(tuán)隊(duì)
微服務(wù)背后的核心原則是將大型應(yīng)用程序分割成小型的獨(dú)立功能。每個(gè)功能都由一個(gè)小型,超集中的團(tuán)隊(duì)提供支持,該團(tuán)隊(duì)負(fù)責(zé)其服務(wù)并確保他們?yōu)樵摲?wù)選擇適當(dāng)?shù)募夹g(shù),流程和工具。負(fù)責(zé)專門的職能可以確保團(tuán)隊(duì)確切地知道他們關(guān)注的是什么以及他們的可交付時(shí)間表。這一重點(diǎn)可以幫助團(tuán)隊(duì)實(shí)現(xiàn)零點(diǎn)并提高生產(chǎn)力。
2、更快的部署
每個(gè)微服務(wù)都按照自己的流程運(yùn)行,通常管理自己的數(shù)據(jù)庫(kù)。這使得IT團(tuán)隊(duì)無(wú)法與其他應(yīng)用程序協(xié)調(diào),或等待部署代碼,直到整個(gè)應(yīng)用程序或更新準(zhǔn)備就緒。每個(gè)微服務(wù)團(tuán)隊(duì)都可以設(shè)置和管理他們的部署計(jì)劃,以更快地完成項(xiàng)目并提高應(yīng)用程序部署的整體速度。
3、錯(cuò)誤和故障隔離
當(dāng)微服務(wù)架構(gòu)隔離功能時(shí),它也會(huì)隔離錯(cuò)誤。一個(gè)微服務(wù)中的問(wèn)題不會(huì)關(guān)閉整個(gè)應(yīng)用程序,它將包含在該區(qū)域中,而其他微服務(wù)繼續(xù)運(yùn)行。這不僅可以延長(zhǎng)正常運(yùn)行時(shí)間,還可以更輕松地查明問(wèn)題的根源并解決問(wèn)題。
4、安全監(jiān)控
隔離錯(cuò)誤的相同結(jié)構(gòu)隔離了安全問(wèn)題。即使應(yīng)用程序的某個(gè)部分受到損害或遇到安全問(wèn)題,它也不會(huì)影響應(yīng)用程序的其他區(qū)域。這種隔離使得在保持應(yīng)用程序正常運(yùn)行的同時(shí)更容易識(shí)別問(wèn)題并快速解決問(wèn)題。
5、兼容CI / CD和敏捷
微服務(wù)架構(gòu)與軟件行業(yè)中最有效的過(guò)程兼容,包括CI,CD,敏捷和容器方法。團(tuán)隊(duì)可以選擇最適合他們需求的流程,將微服務(wù)集成到他們的開(kāi)發(fā)方法中并使用他們喜歡的任何工具,例如Docker和Kubernetes用于容器或 FlexDeploy for DevOps。
6、質(zhì)量改進(jìn)
通過(guò)在聚焦模塊中工作,微服務(wù)架構(gòu)提高了應(yīng)用系統(tǒng)的整體質(zhì)量。團(tuán)隊(duì)專注于小型,定義明確的功能,使他們能夠創(chuàng)建高質(zhì)量的代碼。這不僅會(huì)對(duì)代碼的可靠性產(chǎn)生積極影響,還可以更輕松地管理代碼庫(kù)中的問(wèn)題,同時(shí)實(shí)現(xiàn)第三方服務(wù)的可伸縮性和可重用性。
7、可擴(kuò)展性
可以從應(yīng)用程序中輕松提取獨(dú)立功能,以便在其他應(yīng)用程序中重用和重新調(diào)整用途,并提高可伸縮性。各個(gè)開(kāi)發(fā)團(tuán)隊(duì)還可以實(shí)現(xiàn)和部署他們的代碼,而無(wú)需考慮更大的IT團(tuán)隊(duì)或部門的日程安排。這使得大型組織更容易使用微服務(wù)架構(gòu)來(lái)減少可能延遲部署的內(nèi)部政治和其他問(wèn)題。
[免責(zé)聲明]
文章標(biāo)題: 微服務(wù)框架有哪些
文章內(nèi)容為網(wǎng)站編輯整理發(fā)布,僅供學(xué)習(xí)與參考,不代表本網(wǎng)站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)溝通。發(fā)送郵件至36dianping@36kr.com,我們會(huì)在3個(gè)工作日內(nèi)處理。