vert.x_选择Vert.x的3个理由
vert.x
Vert.x是用于JVM的輕量級(jí)高性能應(yīng)用程序平臺(tái)
現(xiàn)代Web應(yīng)用程序和移動(dòng)客戶端的興起重新定義了Web服務(wù)器的期望。 Node.js是第一個(gè)識(shí)別范式轉(zhuǎn)換并提供解決方案的技術(shù)。
應(yīng)用程序平臺(tái)Vert.x繼承了Node.js的一些創(chuàng)新,并使其在JVM上可用,將新鮮的想法與最復(fù)雜,最快的運(yùn)行時(shí)環(huán)境之一結(jié)合在一起。 Vert.x附帶了一系列令人興奮的功能,這些功能對于開發(fā)Web應(yīng)用程序的任何人都非常有趣。
非阻塞,事件驅(qū)動(dòng)的運(yùn)行時(shí)
Vert.x提供了非阻塞的 , 事件驅(qū)動(dòng)的運(yùn)行時(shí)。 如果服務(wù)器必須執(zhí)行需要等待響應(yīng)的任務(wù)(例如,從數(shù)據(jù)庫請求數(shù)據(jù)),則有兩種方法可以實(shí)現(xiàn):阻塞和非阻塞。
傳統(tǒng)方法是同步或阻塞調(diào)用。 程序流暫停并等待答案返回。 為了能夠并行處理多個(gè)請求,服務(wù)器將在不同的線程中執(zhí)行每個(gè)請求。 優(yōu)點(diǎn)是相對簡單的編程模型,但缺點(diǎn)是如果線程數(shù)量變大,則會(huì)產(chǎn)生大量開銷。
第二種解決方案是非阻塞調(diào)用。 調(diào)用者無需等待答案,而是繼續(xù)執(zhí)行,但是提供了一個(gè)回調(diào),一旦數(shù)據(jù)到達(dá),該回調(diào)將被執(zhí)行。 這種方法需要(稍微)更復(fù)雜的編程模型,但開銷卻少得多。 通常,當(dāng)需要并行處理大量請求時(shí),非阻塞方法會(huì)帶來更好的性能。
易于使用的并發(fā)性和可伸縮性
Vert.x應(yīng)用程序由松耦合的組件組成,可以對其進(jìn)行重新排列以匹配不斷增長的性能要求
Vert.x應(yīng)用程序是使用類似于Actor的并發(fā)模型編寫的。 一個(gè)應(yīng)用程序由幾個(gè)獨(dú)立運(yùn)行的組件(即所謂的Verticles)組成。 一個(gè)Verticle運(yùn)行單線程,并通過在全局事件總線上交換消息來與其他Verticles通信。
由于它們不共享狀態(tài),因此Verticles可以并行運(yùn)行。 結(jié)果是編寫多線程應(yīng)用程序的一種易于使用的方法。 您可以創(chuàng)建幾個(gè)負(fù)責(zé)同一任務(wù)的Verticles,并且運(yùn)行時(shí)將在其中分配工作負(fù)載,這意味著您可以毫不費(fèi)力地充分利用所有CPU內(nèi)核。
頂點(diǎn)也可以分布在多臺(tái)機(jī)器之間。 這對于應(yīng)用程序代碼是透明的。 Verticles使用相同的機(jī)制進(jìn)行通信,就好像它們將在同一臺(tái)計(jì)算機(jī)上運(yùn)行一樣。 這使得擴(kuò)展應(yīng)用程序變得非常容易。
Vert.x支持JVM上最流行的語言。 正在支持Scala和Clojure。
多種語言
與許多其他應(yīng)用程序平臺(tái)不同,Vert.x是多語言的。 應(yīng)用程序可以用幾種語言編寫。 甚至可以在同一應(yīng)用程序中使用不同的語言。 此時(shí),可以使用Java,Python,Groovy,Ruby和JavaScript,并且即將支持Scala和Clojure。
結(jié)論
Vert.x是一個(gè)相對較年輕的平臺(tái),因此其生態(tài)系統(tǒng)不如更成熟的平臺(tái)豐富。 但是,對于最常見的任務(wù),有擴(kuò)展可用。 Vert.x的優(yōu)勢令人驚訝。 它的無阻塞,事件驅(qū)動(dòng)性質(zhì)非常適合現(xiàn)代Web應(yīng)用程序。 Vert.x使得編寫并發(fā)應(yīng)用程序變得很容易,該應(yīng)用程序可以輕松地從一臺(tái)低端計(jì)算機(jī)擴(kuò)展到具有多個(gè)高端服務(wù)器的集群。 再加上您可以為JVM使用最流行的語言,并使Web開發(fā)人員夢想成真的事實(shí)!
翻譯自: https://www.javacodegeeks.com/2014/03/3-reasons-to-choose-vert-x.html
vert.x
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的vert.x_选择Vert.x的3个理由的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 迅雷电脑投电视盒子(迅雷投屏小米盒子)
- 下一篇: 多玩泰拉瑞亚盒子电脑版下载(泰拉瑞亚盒子