999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

確保微服務優化運行的5個挑戰

2020-10-12 14:44:32步才捷
計算機與網絡 2020年16期
關鍵詞:解決方案挑戰服務

步才捷

關注點分離(SoC)是一項設計原則,規定軟件的構建應根據關注點或總體功能來確定不同的部分,30多年來一直被用來決定如何構建技術。在單體應用中,它體現在典型的3層架構中的表現層、業務層和數據層的分離。

微服務采用了這個概念,并將其顛覆。他們將同一個應用程序以這樣的方式分離出來,應用程序的單一代碼庫可以被分解并單獨部署。這樣做的好處是巨大的,但也是有代價的,通常體現在時間和金錢兩方面,除了將現有的應用程序過渡到容器所帶來的巨大的前期投資之外,維護該應用程序也帶來了新的挑戰。

挑戰1:似乎很難監控整體

雖然單體應用程序也有其自身的挑戰,但在單體中回滾一個“壞”版本的過程是相當簡單的。在容器化應用中,事情就變得復雜許多。無論是將單體應用逐步分解為微服務,還是從頭開始構建一個新系統,都有更多的服務需要監控。其中每一個都可能會:使用不同的技術或語言;運行在不同的機器或容器上;使用K8s或類似的技術進行容器化和編排。

隨之而來的是,系統變得高度分散,這也意味著需要監控的東西也多了起來。以前只有一個單體進程,而現在可能有幾十個容器化進程運行在不同的區域,有時甚至是不同的云。這意味著不再有一套單一的運維指標來統治他們,IT運維團隊可以用它來評估應用程序的一般正常運行時間。取而代之的是,團隊現在必須處理數以百計(甚至數以千計)的指標、事件和告警類型,他們需要從中分離出有效信號和無效噪音。

解決方案

DevOps監控需要從扁平化的數據模型轉向分層模型,在這種模型中,可以隨時觀察到一系列高級系統和業務KPI。只要有一點偏差,團隊就必須進入指標層次結構,查看干擾來自于哪個微服務,并從那里了解實際發生故障的容器。這很可能需要從數據存儲和可視化的角度重新調整DevOps工具鏈。利用開源的時序DB工具,諸如Prometheus和Grafana 7.0等使得這個目標非常容易實現。

挑戰2:跨服務日志記錄

在談論監控應用程序時,首先要提出的事情之一是日志。服務器每天都會產生的IT日志相當于碳的排放量,最終導致溢出的硬盤驅動器以及存儲和工具成本。即使采用單體架構,日志也可能已經使你的工程師有些頭疼。

使用微服務,日志變得更加分散。一個簡單的用戶業務可以通過許多服務進行,所有這些服務都有自己的日志記錄框架。要解決問題,必須從業務可能通過的所有服務中提取不同的日志,來了解問題所在。

解決方案

這里的主要挑戰是了解單個業務如何在不同服務之間流動。為了實現這一點,需要對傳統的單體程序在順序業務執行期間記錄事件的方式進行大量修改。盡管已經出現了許多框架來幫助開發人員進行處理(我們特別喜歡Jaeger的方法),但對于希望將單體重構為微服務的企業而言,轉向異步、跟蹤驅動的日志記錄仍需要付出艱巨的努力。

挑戰3:部署一項服務會破壞另一項服務

單片機世界中的一個關鍵假設是:所有代碼都是在同一時間部署的。這意味著應用程序處于最脆弱狀態的時間范圍是一個已知的、相對較短的時間段(即部署后的24 ~ 48 h)。在微服務的世界里,這個假設不再成立,由于微服務本質上是相互交織的,其中一個服務細微的變更可能會導致行為或性能問題,而這些問題會在另一個服務中體現出來。因此所面臨的挑戰是:當前出現故障的微服務使得另一個開發團隊并沒有預料到他們的代碼會出現中斷。這既會導致整個應用的意外不穩定性,也會導致一些組織內部的摩擦。雖然微服務架構可能讓部署代碼的過程變得更容易,但實際上卻讓部署后驗證代碼的過程變得更難。

解決方案

企業必須創建共享的發布日歷,并且每當部署相關的微服務時,都要分配資源用于密切測試和監控整個應用的行為。在沒有跨團隊協調的情況下部署新版本的微服務,這個方法就像牛油果加吐司一樣,是解決這一挑戰的成功秘訣。

挑戰4:難以找到問題的根本原因

在這一點上,你已經鎖定了有問題的服務,提取了所有需要提取的數據,包括堆棧跟蹤和日志中的一些變量值。你可能還有一些APM解決方案,比如New Relic、AppDynamics或Dynatrace。從那里,你會得到一些額外的關于相關方法異常處理的數據。但是,問題的根本原因呢?

你從日志中得到的前幾位變量數據很可能像面包屑,指向下一條線索的方向,而不是更進一步的原因。在這一點上,需要盡我們所能,發掘出更多應用程序下的“魔力”。傳統上,這需要發出關于每個失敗事務狀態的詳細信息,即到底為什么失敗。這里的挑戰是,需要開發人員具有巨大的預見性,知道需要哪些信息來提前排除問題。

解決方案

當微服務中的錯誤根源橫跨多個服務時,制定一個集中的問題根源檢測方法至關重要。團隊必須考慮需要哪些信息顆粒來診斷未來的問題,以及它們應該在什么層級上發出日志,以便考慮性能和安全因素,這是一座高高的山,而且是一座攀登路上永無止境的山。

挑戰5:版本管理

值得強調的問題是,從典型的單體架構中層模型過渡到微服務的圖模型。由于超過80 %的應用程序代碼通常是第三方代碼,因此在公司的不同微服務之間管理第三方代碼的共享方式成為避免陷入“依賴地獄”的關鍵因素。

考慮這樣一種情況:一些團隊在使用第三方組件或共享實例程序的X.Y版本(幾乎所有公司都有),而其他團隊則使用X.Z版本。這就增加了由于不同版本之間缺乏兼容性而產生的關鍵軟件問題風險。

而在這之前還要提醒自己,任何一個微服務使用第三方代碼的舊的更脆弱的版本,都會產生安全問題———這是黑客的天堂。允許不同的團隊在孤島般的repo中管理他們的依賴性,在單體世界中可能是可行的,但在微服務架構中,這是絕對不可以的。

解決方案

公司必須重新設計他們的構建流程,以便第三方和共享實用程序代碼利用集中式artifact倉庫。團隊應該只允許將自己的代碼存儲在單獨的倉庫中。

與大多數科技行業的進步一樣,微服務采用了一個熟悉的概念,并將其顛覆。他們重新思考了大規模應用的設計、構建和維護方式,他們帶來了許多好處,但也帶來了新的挑戰。當我們把這5個主要挑戰放在一起看時,可以看到他們都源于同一個理念。因此,每當采用像微服務這樣的新技術時,底線是既需要重新思考,也需要重新調整代碼的構建、部署和觀察方式。總之,微服務所帶來的優勢是難以拒絕的,但風險也是巨大的。

猜你喜歡
解決方案挑戰服務
解決方案和折中方案
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
嘰咕樂挑戰
嘰咕樂挑戰
嘰咕樂挑戰
4G LTE室內覆蓋解決方案探討
第52Q 邁向新挑戰
主站蜘蛛池模板: 无码国产偷倩在线播放老年人| 亚洲an第二区国产精品| 色欲国产一区二区日韩欧美| 黄色网址手机国内免费在线观看| 日本福利视频网站| 青青网在线国产| 日本伊人色综合网| 国产97视频在线| 亚洲无码91视频| 美女高潮全身流白浆福利区| jijzzizz老师出水喷水喷出| 免费看一级毛片波多结衣| 欧美国产视频| 久久亚洲精少妇毛片午夜无码 | 黄色片中文字幕| 国产高清在线观看| 国产成人无码久久久久毛片| 久久不卡国产精品无码| 色AV色 综合网站| 国产系列在线| 99人妻碰碰碰久久久久禁片| 亚洲午夜18| AV在线麻免费观看网站 | 激情無極限的亚洲一区免费| 欧美啪啪一区| 日韩精品免费在线视频| 国产成人精品日本亚洲77美色| 国产亚洲成AⅤ人片在线观看| 国产成人免费高清AⅤ| 国产人成在线视频| 91成人精品视频| 日本精品中文字幕在线不卡| 色综合久久无码网| 久久精品一品道久久精品| 国产拍在线| 丁香六月激情综合| 极品国产在线| 国产第一页亚洲| 日本午夜视频在线观看| 91久久夜色精品国产网站| 九九热视频精品在线| 白浆免费视频国产精品视频| 99热这里只有精品免费国产| 成人日韩视频| 四虎AV麻豆| 国产亚洲精品自在久久不卡| 亚洲欧美成人综合| 色妞永久免费视频| 欧美在线精品一区二区三区| 国产在线视频福利资源站| 99久久99这里只有免费的精品| 国产精品免费电影| 亚洲人成在线精品| 免费激情网站| 国产精品久线在线观看| 欧美人与性动交a欧美精品| 一级成人a做片免费| 欧美天天干| 国产成人无码久久久久毛片| 99久久精品免费视频| 久久亚洲AⅤ无码精品午夜麻豆| a毛片免费观看| 亚洲精品男人天堂| 国产国产人在线成免费视频狼人色| 亚洲视频免| 亚洲中文制服丝袜欧美精品| 国产九九精品视频| 国产精品丝袜在线| 一级爱做片免费观看久久| 熟女成人国产精品视频| 日韩在线永久免费播放| 在线观看国产精品一区| 婷婷激情五月网| 精品伊人久久久久7777人| 色综合久久无码网| 亚洲天堂免费在线视频| 精品国产香蕉在线播出| 一区二区欧美日韩高清免费| 婷婷亚洲最大| 日本91在线| 国产一级毛片在线| www精品久久|