日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

java int不将0忽略_Java微服务:蛋糕是骗人的,但您不能忽略它

發(fā)布時(shí)間:2023/12/3 java 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java int不将0忽略_Java微服务:蛋糕是骗人的,但您不能忽略它 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

java int不將0忽略

構(gòu)建微服務(wù)實(shí)際上意味著什么? 通過微服務(wù)框架的眼光回答

忽略微服務(wù)的趨勢已變得不可能。 有些人會(huì)說這只是另一個(gè)難以忍受的流行語,而另一些人會(huì)背誦打破巨石的優(yōu)勢或采取逆勢方法并關(guān)注負(fù)面因素。

在本文中,我們將全面了解我們擁有的框架,重點(diǎn)是Java生態(tài)系統(tǒng),以實(shí)際實(shí)現(xiàn)微服務(wù)并了解它們的全部含義。 讓我們潛入。

蛋糕是一個(gè)謊言

我想到的第一個(gè)問題是,我們真的需要一個(gè)專門的框架來構(gòu)建微服務(wù)嗎? 答案是不。 您可以使用微服務(wù)框架構(gòu)建整體嗎? 是。 因此,如果真正由您決定并且要使用它,那么微服務(wù)框架相對(duì)于Java EE或Spring有什么好處? 什么使它值得采用? 它們是否同時(shí)解決內(nèi)部架構(gòu)和外部運(yùn)維架構(gòu)?

在接下來的幾節(jié)中,我們將仔細(xì)研究Java EE及其新的微型配置計(jì)劃,Spring和Spring Boot,帶有Lagom的Lightbend堆棧以及其他開源解決方案,例如Spotify的Apollo。

在繼續(xù)前進(jìn)之前,值得一提的是,關(guān)于微服務(wù)架構(gòu)的定義還不是很明確。 ThoughtWorks的首席科學(xué)家Martin Fowler在他有關(guān)微服務(wù)的第一篇文章中試圖對(duì)其進(jìn)行定義:

“微服務(wù)架構(gòu)風(fēng)格是一種將單個(gè)應(yīng)用程序開發(fā)為一組小型服務(wù)的方法,每個(gè)小型服務(wù)都在自己的進(jìn)程中運(yùn)行并與輕量級(jí)機(jī)制(通常是HTTP資源API)進(jìn)行通信。 這些服務(wù)圍繞業(yè)務(wù)功能構(gòu)建,并且可以通過全自動(dòng)部署機(jī)制獨(dú)立部署。”

這篇文章與微服務(wù)的優(yōu)缺點(diǎn)無關(guān),它假定您只是對(duì)支持它的底層技術(shù)感興趣。 另一篇值得探討這些問題的文章涵蓋了調(diào)試微服務(wù)的主要挑戰(zhàn) -這是許多人在考慮微服務(wù)體系結(jié)構(gòu)時(shí)并未想到的常見陷阱。

讓我們開始并逐一檢查以下技術(shù)/平臺(tái)/框架。

1. Java企業(yè)版

用于構(gòu)建應(yīng)用程序的經(jīng)典Java EE方法是針對(duì)整體的,隨著時(shí)間的流逝,這些整體往往會(huì)變成……意大利面條式代碼怪物。 傳統(tǒng)上,企業(yè)應(yīng)用程序?qū)⒈淮虬絾蝹€(gè)EAR(企業(yè)歸檔)部署單元中,該單元包含WAR(網(wǎng)絡(luò)歸檔)文件和JAR(Java歸檔)。

但是,“ Vanilla” Java EE也可以用于微服務(wù)架構(gòu)。 有關(guān)將Java EE整體重構(gòu)為微服務(wù)體系結(jié)構(gòu)的步驟的深入研究示例, 請查看 Arun Gupta的這篇文章 ,他在其中通過購物車的示例應(yīng)用程序介紹了此過程中所需的步驟。

即使Java EE 8的開發(fā)有所放緩,但背后的“非官方”社區(qū)仍然活躍而且活躍。 Java EE Microprofile背后的人們提出了一項(xiàng)針對(duì)微服務(wù)架構(gòu)優(yōu)化企業(yè)Java的新計(jì)劃。 您可以在此處加入討論 。

考慮Java EE微服務(wù)時(shí)要考慮的另一個(gè)有趣項(xiàng)目是Kumuluz 。 該框架可以利用您現(xiàn)有的Java EE知識(shí),并為您提供一種輕松選擇應(yīng)用程序所需組件的方法,而不會(huì)浪費(fèi)太多時(shí)間在配置上。

底線: Java EE及其周圍的項(xiàng)目非常適合微服務(wù),但不涉及操作方面,而是將其用法和最佳實(shí)踐留給您個(gè)人解釋。

2. Lightbend:Play,Akka,ConductR和Lagom

Lightbend(以前稱為Typesafe)為我們提供了更多選擇。 與Kumuluz相對(duì)于普通Java EE的優(yōu)勢類似,Lagom將Lightbend堆棧與Play,Akka和ConductR包裹在一起,并提供了構(gòu)建微服務(wù)的簡便方法。 它的基礎(chǔ)組件還包括Cassandra,Guice,Jackson,slf4j,Logback和其他Lightbend組件。

Lagom (瑞典語中“恰到好處的數(shù)量”)仍處于早期階段,但對(duì)于Lightbend堆棧而言,這似乎是一個(gè)有希望的方向。 Lightbend的首席技術(shù)官Jonas Boner在接受InfoQ采訪時(shí)說:“目前,大多數(shù)微服務(wù)框架都集中在簡化單個(gè)微服務(wù)的構(gòu)建上,這很容易。 Lagom將其擴(kuò)展到微服務(wù)系統(tǒng),大型系統(tǒng)–這是困難的部分,因?yàn)樵谶@里我們面臨著分布式系統(tǒng)的復(fù)雜性。

底線: Lagom將Lightbend的功能集成到一個(gè)框架中,以及ConductR提供的操作功能。 不僅關(guān)注單個(gè)微服務(wù),而且關(guān)注整個(gè)系統(tǒng)。

3,Spring,Spring Boot和Spring Cloud

盡管Spring和Spring Boot并不稱自己為微服務(wù)框架,并且Spring站點(diǎn)的首頁上沒有提及微服務(wù),但這并不意味著它們不在循環(huán)之中。 幾乎似乎他們似乎是故意不稱其為微服務(wù),以遠(yuǎn)離流行語。

Spring Stack與Spring Cloud一起,利用Netflix Eureka和Ribbon來支持分布式系統(tǒng)的開發(fā)(該術(shù)語通常與“微服務(wù)”重疊)。 這些功能包括配置管理,服務(wù)發(fā)現(xiàn),智能路由,控制總線,領(lǐng)導(dǎo)者選舉,分布式會(huì)話等。

要深入了解如何使用Spring以及其他一些Netflix和其他開源項(xiàng)目構(gòu)建微服務(wù), 請查看InfoQ的這篇文章 。

底線: Spring在微服務(wù)開發(fā)方面處于有利位置,并且圍繞著解決了運(yùn)營角度的外部開源項(xiàng)目提供了產(chǎn)品。

4. Dropwizard

與Spring類似, Dropwizard也沒有太多談?wù)撐⒎?wù)。 這是一個(gè)用于開發(fā)對(duì)ops友好的高性能RESTful Web服務(wù)的Java框架。 經(jīng)過認(rèn)真研究的Java庫集合,使構(gòu)建易于生產(chǎn)的Java應(yīng)用程序更加容易。

Dropwizard模塊允許連接Dropwizards核心所沒有的其他項(xiàng)目,并且社區(qū)還開發(fā)了一些模塊來連接類似Netflix Eureka的項(xiàng)目,類似于Spring Cloud。

之前,我們還對(duì)Dropwizard和Spring Boot進(jìn)行了正面對(duì)比,并比較了它們的功能。

底線:由于Dropwizard是一個(gè)社區(qū)項(xiàng)目,沒有像Spring和Pivotal,Java EE和Oracle,Lagom和Lightbend這樣的大型公司的支持,因此它的開發(fā)速度可能會(huì)較慢,但是背后有一個(gè)強(qiáng)大的社區(qū),因此可以大公司和較小項(xiàng)目的框架。

5. Spotify Apollo,VertX和其他“ Microframeworks”

除了我們在這里提到的4個(gè)主要參與者之外,還有很多其他項(xiàng)目值得一提,它們也可以用于編寫微服務(wù):

Vertx ,一個(gè)用于在JVM上構(gòu)建響應(yīng)式應(yīng)用程序的工具包。 有人可能會(huì)認(rèn)為它應(yīng)該在四大巨頭中占有一席之地。

Spotify Apollo ,Spotify在編寫Java微服務(wù)時(shí)使用的一組Java庫。 Apollo包括HTTP服務(wù)器和URI路由系統(tǒng)等功能,使實(shí)現(xiàn)RESTful服務(wù)變得輕而易舉。

其他框架包括Spark,Ninja和Jodd以及Restlet 。

底線: Java微服務(wù)的競爭空間很大,值得一試的是較小的參與者。

6.微服務(wù)先決條件

正如馬丁·福勒(Martin Fowler)在其微服務(wù)先決條件博文中所說:“重要的是要確保您的監(jiān)控指示問題時(shí)能夠Swift做出React。 特別是,任何事件管理都需要開發(fā)團(tuán)隊(duì)和運(yùn)營部門參與,以解決緊迫的問題和根本原因分析,以確保基本問題得到解決。” 同樣,如果您還沒有準(zhǔn)備好使用微服務(wù)體系結(jié)構(gòu),那么此帖子和Hackernews上的帖子會(huì)共享更多的問題。

在OverOps ,我們正在構(gòu)建一個(gè)工具來解決這一難題 ,并顯示何時(shí),何地以及為什么在生產(chǎn)中導(dǎo)致代碼中斷。 它是唯一為您顯示整個(gè)調(diào)用堆棧中每個(gè)異常,已記錄警告和錯(cuò)誤的完整源代碼和變量狀態(tài)的工具。 檢查一下 。

OverOps錯(cuò)誤分析屏幕

最重要的是:微服務(wù)要付費(fèi),而且并非每個(gè)系統(tǒng)都適合。 如果您選擇微服務(wù)架構(gòu),則應(yīng)該深入了解成本并確定應(yīng)改進(jìn)的流程。

最后的想法

不管使用哪種框架或平臺(tái),構(gòu)建微服務(wù)都與它們緊密結(jié)合。 這是一種思維定勢和一種體系結(jié)構(gòu)的方法,您可能應(yīng)該選擇自己覺得會(huì)更有效率的任何一種選擇。

話雖如此,成功實(shí)現(xiàn)微服務(wù)架構(gòu)并不僅限于應(yīng)用程序本身。 圍繞它的大部分成本來自所謂的DevOps流程,監(jiān)視,CI / CD,日志更改,服務(wù)器配置等。 將來,我們將在博客上介紹這些方面,并很高興聽到您對(duì)此的想法,并在我們的下一篇文章中進(jìn)行介紹。 隨時(shí)通過hello@overops.com和@overopshq進(jìn)行聯(lián)系 。

翻譯自: https://www.javacodegeeks.com/2016/11/java-microservices-cake-lie-cant-ignore.html

java int不將0忽略

總結(jié)

以上是生活随笔為你收集整理的java int不将0忽略_Java微服务:蛋糕是骗人的,但您不能忽略它的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。