中文字幕一区二区人妻电影,亚洲av无码一区二区乱子伦as ,亚洲精品无码永久在线观看,亚洲成aⅴ人片久青草影院按摩,亚洲黑人巨大videos

是時候進行“微服務(wù)檢查”了嗎?

發(fā)布于:2021-02-12 00:00:02

0

68

0

微服務(wù) devops jaxlondon

如果您打算對當(dāng)前的微服務(wù)實現(xiàn)進行自己的檢查,則絕對應(yīng)該閱讀本篇文章了。

您的公司將從微服務(wù)實施審核中受益嗎?

我們的許多客戶當(dāng)前正在使用基于“微服務(wù)”的架構(gòu)來實現(xiàn)應(yīng)用程序。我們越來越多地從公司遷移到微服務(wù)的過程中聽到他們的聲音,他們需要我們的幫助來驗證和改進其當(dāng)前解決方案。這些“微服務(wù)檢查”項目揭示了一些有趣的模式,并且由于我們具有在廣泛行業(yè)中工作的經(jīng)驗(并且在查看項目時也有“新鮮的眼睛”),因此我們經(jīng)常能夠與團隊一起工作以進行重大改進,并為將來的改進制定戰(zhàn)略路線圖。

我們在下面總結(jié)了我們的發(fā)現(xiàn),目的是在您考慮對自己當(dāng)前的微服務(wù)實現(xiàn)進行檢查時提供啟發(fā)。

技術(shù)基礎(chǔ)

2014年,Martin Fowler表示 成功實現(xiàn)微服務(wù)的 前提條件包括快速配置,基本監(jiān)控和快速應(yīng)用程序部署。OpenCredo團隊在內(nèi)部進行了長時間的討論,我們不僅廣泛同意該聲明,而且在多個項目中也對此進行了驗證。

快速配置

隨著微服務(wù)平臺,微服務(wù)兼容平臺即服務(wù)(PaaS)和容器即服務(wù)(CaaS )( 如 Kubernetes,  Mesos 和 Docker  Datacenter )的實現(xiàn),快速配置在2016年變得不再那么重要了 。這些平臺通常提供可將微服務(wù)部署到的計算資源的同質(zhì)化池(或其他某種抽象化)。但是,某些公司選擇部署到基礎(chǔ)架構(gòu)即服務(wù)(IaaS),例如Amazon Web Services  (AWS),  Google Cloud Platform提供的 服務(wù)。 (GCP)和Microsoft Azure,這里缺乏快速配置是導(dǎo)致開發(fā)和運營之間經(jīng)常發(fā)生爭執(zhí)的原因。

作為微服務(wù)檢查項目的一部分,我們通常會尋找警告信號,例如不可重復(fù)的構(gòu)建,手動組裝基礎(chǔ)結(jié)構(gòu)以及配置漂移(令人恐懼的“雪花服務(wù)器”)。OpenCredo的團隊是容器技術(shù)和相關(guān)業(yè)務(wù)流程平臺的支持者。我們也是HashiCorp工具的愛好者,并定期與Packer 和 Terraform一起工作(并為它們做貢獻)  。盡管HashiCorp致力于爭取世界統(tǒng)治,但我們當(dāng)然意識到確實存在其他配置管理工具,并且我們與Ansible,  Puppet 和 Chef進行了大量合作 。

基本監(jiān)控

監(jiān)視微服務(wù)實現(xiàn)的能力確實至關(guān)重要。隨著在應(yīng)用程序中部署的服務(wù)數(shù)量的增加,交互的復(fù)雜性也 隨之增加,因此,潛在的 突發(fā)行為成為現(xiàn)實(這是真正復(fù)雜的系統(tǒng)的標(biāo)志)。作為微服務(wù)檢查的一部分,我們尋找諸如未檢測到的基礎(chǔ)結(jié)構(gòu)問題(例如磁盤空間用完),警報風(fēng)暴(觸發(fā)了太多警報以致無法知道問題的原因)和生產(chǎn)中斷等問題。 。

我們定期與客戶合作,以幫助集成和配置SaaS監(jiān)視解決方案(例如 Datadog,  Sysdig 和 Ruxit),并且還與本地監(jiān)視解決方案(例如 Prometheus)合作。我們也是合成交易 和關(guān)鍵煙霧測試的堅定支持者, 并且 為此目的使用了諸如JMeter 和 Serenity BDD之類的工具 。通常,當(dāng)我們向項目經(jīng)理和其他業(yè)務(wù)涉眾展示此內(nèi)容時,他們會想知道如何在不具有應(yīng)用程序可見性的情況下進行管理!

快速的應(yīng)用程序部署

快速應(yīng)用程序部署的主題以及持續(xù)交付的相關(guān)主題 ,應(yīng)有自己的博客文章。但是,在微服務(wù)檢查的背景下,我們經(jīng)常發(fā)現(xiàn)這是采用微服務(wù)的公司中大多數(shù)爭執(zhí)的原因。我們中的許多人習(xí)慣于使用諸如Jenkins,  Go CD 和 Spinnaker之類的持續(xù)集成和部署工具 ,但是當(dāng)成功執(zhí)行構(gòu)建流程時,我們經(jīng)常會看到公司內(nèi)部出現(xiàn)問題。  一個團隊中的成員應(yīng)用于公司中的另一個團隊。如果無法在整個公司中可靠且重復(fù)地部署構(gòu)建,或者生產(chǎn)中斷頻繁,那么我們將進一步研究為可擴展的快速應(yīng)用程序部署提供支持。通常,必須在技術(shù)和公司級別解決與該問題相關(guān)的問題。

我們看到的另一個常見模式是,最初的微服務(wù)實現(xiàn)或概念證明不與“傳統(tǒng)”(賺錢)系統(tǒng)集成,因此,在這種情況下實現(xiàn)持續(xù)交付的痛苦并沒有經(jīng)歷。我們經(jīng)常與 SpectoLabs 團隊合作解決此問題,因為他們在解決此問題(例如服務(wù)虛擬化 和 API仿真)方面擁有豐富的經(jīng)驗 。

不要忘記公司

對于那些使用微服務(wù)Bingo的人來說,這是您檢查“ Conway法則”的地方。但是,正如我們在其他文章和演示中所討論的那樣,實際情況是 Conway在說實話……

公司設(shè)計與轉(zhuǎn)型

當(dāng)團隊從概念驗證階段過渡到實施階段時,通常會出現(xiàn)公司設(shè)計斗爭的最初跡象。如上面“快速應(yīng)用程序部署”部分所述,一旦實現(xiàn)擴展到一個團隊之外,那么交互的復(fù)雜性就會增加。這通常在技術(shù)層面上具有挑戰(zhàn)性,但在公司層面上幾乎總是具有挑戰(zhàn)性 。我們會尋找危險信號,例如工作隊列,長時間的延遲或工作在公司中移動時出現(xiàn)的“信號中斷”,以及團隊朝不同的方向(或使用競爭技術(shù))拉動。

我們已經(jīng) 幫助多家公司 從開發(fā)團隊到產(chǎn)品團隊,再到管理層,回顧了他們當(dāng)前的目標(biāo)設(shè)定和公司結(jié)構(gòu)方法。我們經(jīng)常與公司內(nèi)部的C * O級別一起工作,因為除非在此級別上達成一致和認(rèn)可,否則公司其他部分進行的任何更改都可以輕松地解決。

“ DevOps”的重要性

盡管“ DevOps”一詞  已經(jīng)過分使用(但仍未 真正定義),但我們相信其背后的概念,例如(1)跨開發(fā)和運營共享理解和責(zé)任,(2)自動化,遵循原則驅(qū)動工具的實踐,而不是相反的做法,以及(3)創(chuàng)建用于快速反饋的信號,對于微服務(wù)架構(gòu)的成功至關(guān)重要。由于基于微服務(wù)的應(yīng)用程序中的應(yīng)用程序組件數(shù)量通常較高(與更傳統(tǒng)的體系結(jié)構(gòu)相比),我們經(jīng)常看到問題迅速出現(xiàn),團隊無法達成目標(biāo),以多種不同方式解決同一問題。 貨物養(yǎng)殖 自動化程度或?qū)ΜF(xiàn)成的“ DevOps工具”的錯誤使用;并且沒有 情境意識。

DevOps的技術(shù)方面已經(jīng)在本文中進行了介紹,但是與上一節(jié)關(guān)注公司設(shè)計的部分一樣,DevOps的公司和人員方面同樣重要(甚至更多)。我們已經(jīng)看到DevOps的實施會在公司內(nèi)部引起恐懼,我們也看到次優(yōu)流程 是自動化的 (自動失敗仍然是失敗?。8鶕?jù)我們的經(jīng)驗,我們開發(fā)了一些程序來協(xié)助 向“ DevOps” 工作方式的 轉(zhuǎn)變。我們還認(rèn)為,“ DevOps”運動背后的概念和目標(biāo)對于更廣泛的業(yè)務(wù)環(huán)境和當(dāng)前的經(jīng)濟環(huán)境至關(guān)重要,在這些市場中,上市時間和創(chuàng)新速度是明顯的競爭優(yōu)勢。

您能從第二雙眼睛中受益嗎?

正如老套話所說,在OpenCredo,沒有兩個項目是不一樣的,因為我們?yōu)槊總€客戶和項目量身定制了我們的服務(wù)。我們的目標(biāo)是進行系統(tǒng)的更改,并提供盡可能多的知識轉(zhuǎn)移,以使任何已實施的解決方案在長期內(nèi)都是可持續(xù)的。話雖如此,我們已經(jīng)在微服務(wù)的范圍內(nèi)確定了幾大類,我們可以通過這些類別反復(fù)幫助客戶。

整體到微服務(wù)評估

您現(xiàn)在應(yīng)該遷移到微服務(wù)架構(gòu),還是從另一個解決方案中受益?通常,客戶希望確保微服務(wù)能夠解決可伸縮性和性能問題,而實際上,首先必須解決基礎(chǔ)架構(gòu),設(shè)計和數(shù)據(jù)建模問題。

我們可以幫助您設(shè)計從 整體到微服務(wù)的 遷移策略。例如,我們可以幫助您回答以下問題:您應(yīng)將現(xiàn)有功能提取到新服務(wù)中,首先應(yīng)將哪些功能構(gòu)建為微服務(wù)(以及如何對數(shù)據(jù)建模),以及如何將服務(wù)與遺留應(yīng)用程序集成?

您是否需要有關(guān)公司如何確保為微服務(wù)實現(xiàn)做好準(zhǔn)備的指南(從建立目標(biāo)的戰(zhàn)略一致性,實施最合適的公司結(jié)構(gòu)到采用“ DevOps”哲學(xué))?

業(yè)務(wù)和公司審查

您的團隊是否了解  整個公司的價值流?OpenCredo幫助公司更好地了解了其 價值流圖,然后幫助他們(通過實驗)增強創(chuàng)新并減少了交貨時間。

您的公司是否已對“影子IT ”感到不知所措?團隊是否在創(chuàng)建微服務(wù)并將其部署到不同的平臺?OpenCredo可以提供有關(guān)如何使IT走出陰影的指南。

員工是否積極 抵制變革?我們可以幫助您了解如何改善學(xué)習(xí)和溝通。

微服務(wù)平臺/基礎(chǔ)架構(gòu)建議和指南。

您是否想利用PaaS解決方案,但不知道選擇哪個?

您是否想將容器(Docker)引入基礎(chǔ)架構(gòu)堆棧,但是不確定如何實現(xiàn),部署解決方案并使之 保持運行狀態(tài)?

我們可以就Apache Mesos,  Kubernetes,  AWS ECS 和 Docker Datacenter等平臺的優(yōu)缺點提供指導(dǎo) 。

OpenCredo是編程基礎(chǔ)架構(gòu)和相關(guān)工具(例如HashiCorp  Terraform 和Packer,Ansible,Puppet和Chef)的專家。我們可以確保您在整個開發(fā)和運營團隊中使用這些方法達到最佳效果。

持續(xù)交付微服務(wù)

我們可以幫助您 建立CI / CD管道 ,以支持從開發(fā) 到生產(chǎn)的快速交付經(jīng)過測試和驗證的應(yīng)用程序組件 。

我們可以幫助您驗證當(dāng)前構(gòu)建管道的有效性。例如,您是否必須同時部署多個服務(wù)以防止集成問題(可怕的“分布式整體”),還是您有多個手動測試驗證門?