2018年對於微服務來講是很是重要的一年,這一年Service Mesh開始嶄露頭角,解決服務間複雜的通訊問題,這一年不少國內互聯網公司已經有了較爲成熟的微服務實踐案例,網易雲主辦的微服務實踐沙龍中也曾邀請過多位微服務大咖帶來乾貨分享。2019年微服務領域又有哪些新趨勢呢?安全
在2018年初,來自Redpoint的VC Astasia Myers曾成功預測過Service Mesh,事件驅動的架構,容器本地安全等趨勢,而在2019年初,他們認爲微服務將在如下領域取得重大進展:架構
測試自動化機器學習
持續部署/持續驗證(CD/CV, Continuous Deployment/Verification)微服務
應急響應工具
雲服務費用管理(CSEM, Cloud Service Expense Management)學習
Kubernetes擴展到機器學習領域測試
趨勢1:CI來了,自動化測試也該興起了
傳統模式下,測試用例的設計一般用來判斷軟件可否在不一樣場景下正確地運行,一般由QA工程師建立和運行測試用例。如今,在持續集成(CI, continuous integration)的pipeline中,軟件工程師開始從傳統的QA團隊中接手部分測試的職責,這也給開發者帶來了新的負擔。優化
大部分業務團隊都但願有一套可以自動化地設計,運行和彙報結果的軟件測試解決方案,而且這套解決方案可以和CI系統無縫兼容,實時檢查最新的代碼,像人工同樣添加註釋。這套解決方案還要有UI界面,以便於工程師們能在用戶界面中尋找問題,減小漏判。大多數狀況下,咱們經過界面鼠標點擊的方式來完成測試,可是有時這種測試方式並不能覆蓋全部場景,而API測試每每能更好地解決這種問題。網站
在網易輕舟微服務平臺中,GoAPI接口測試是以接口生命週期管理爲核心理念,以提升微服務測試效率爲核心價值的協做平臺,提供一站式接口管理、測試方案。經過接入GoAPI測試,德邦快遞的自動化測試已經覆蓋核心系統主流程,發現缺陷率達到49.8%。設計
趨勢2:高效的持續部署/驗證,將替代低效的手動部署
聽說在某些金融機構中,有十分之一的DevOps工程師從事的工做是部署軟件到生產環境中。持續部署將代碼從測試到部署的過程自動化,代替了DevOps工程師的手工操做,假設持續部署軟件僅取代全球10%的DevOps工程師的價值,整個持續部署的市場規模也將接近20億美圓。
持續驗證在持續部署之上加了一個智能層,從日誌和APM中收集事件數據,並經過機器學習技術,去分析致使成功和失敗部署的特徵。持續驗證還應該提供人工介入的接口,以便工程師能提供反饋,提升模型的準確度,並與系統創建信任。此外,持續驗證一般還可以安全地回退失敗的部署。相信將來持續驗證能夠幫助持續部署在多雲環境下成爲一個智能的控制點,它還能夠基於服務的特徵,去選擇最合適的雲,區域和配置。
在輕舟微服務平臺中,CodePipeline提供一整套端到端的工具鏈,打通代碼檢出、編譯、鏡像構建、部署、測試階段,幫助團隊提高使用微服務架構時的持續集成、持續交付能力。基於Codepipeline,網易考拉的變動頻率由天天2次增加到天天1000次以上,結合熔斷,限流,降級等策略,軟件產品質量提高52%。
趨勢3:宕機不用怕,應急響應來「救火」
宕機一般會帶來財務損失,因此快速的解決方案很是重要。據Gartner的數據顯示,平均每分鐘的宕機會給業務帶來5600美圓的損失,而像Amazon這這大型網站,平均每分鐘的損失則高達22萬美圓。而且每次宕機不但會給業務帶來財務損失,還會對品牌形成傷害。
SRE(Site Reliability Engineers,網站可靠性工程師)應運而生,當服務失敗的時候,整個SRE團隊會收到報警,同時會啓動一系列的工做流。應急響應指揮官維護着一份「響應狀態報告」,其中記錄了事件狀況,環境和修復狀況。每一個團隊成員按照預先定義好的模板化的規程去執行解決方案。
PagerDuty,Slack,Jira,Google文檔和知識庫都是SRE團隊用來作事件響應的經常使用工具。Redpoint認爲這些工具能夠被整合爲端到端的SaaS平臺,幫助自動化修復的過程,最終造成最佳實踐。這個平臺不光要分配角色和啓動工做流,還要陳述事件的影響範圍,狀態,事件時間軸,會加速MTTR(Mean-Time-To-Recovery,平均恢復時間),協做和知識共享。
趨勢4:不想花冤枉錢,就請把雲服務費用管理重視起來
雲服務費用管理(CSEM)不但對工程師和IT團隊影響至深,也是整個公司面臨的挑戰之一。大部分業務都是混合雲的部署模式,可是僅使用公有云的企業數量也有增加的趨勢,隨着公有云市場的擴展,成本管理和預測會變得愈來愈重要。
儘管市場上已經有不少雲服務費用管理的解決方案,可是費用控制對雲服務的客戶來講依然是一個痛點。一個雲服務費用管理平臺應該能識別出過載或閒置的資源,須要支持預約和現買現賣,規模優化,退款,還要能設置定製的折扣,並標記異常的花費,還能根據流量的上漲和數據存儲需求預測費用,此外服務優化也是關鍵功能。
趨勢5:Kubernetes擴展到機器學習領域
Kubernetes已經成爲容器編排的事實標準,它的領域也在不斷擴張,將來Kubernetes將成爲機器學習技術棧的一部分。好比,Google發佈了開源的Kubeflow,經過添加Custom Resources Definitions (CRDs) 到集羣中,擴展了Kubernetes的API,使得機器學習的工做負載在Kubernetes中成爲一等公民。在KubCon Seattle 2018大會上,Kubeflow已經成爲關注度最高的雲原生項目。無獨有偶,Lyft也基於Kubernetes構建了本身的機器學習平臺。還有一些獨角獸公司在試圖將Kubernetes上的機器學習和分析的工做負載標準化。
你認爲2019年微服務會有哪些趨勢?歡迎在留言區與咱們互動。
點擊這裏瞭解網易雲輕舟微服務平臺。
參考連接:https://medium.com/memory-lea...
本文首發自網易雲社區,轉載請註明出處。
文章來源: 網易雲社區