偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

一文搞定微服務(wù)測試本質(zhì)

開發(fā) 架構(gòu)
最近幾年微服務(wù)架構(gòu)越來越火爆,逐漸被企業(yè)所采用。隨著軟件架構(gòu)的變化,對應(yīng)的軟件測試策略需要作何調(diào)整呢?在這里我來先介紹一下微服務(wù)的相關(guān)概念以及微服務(wù)的主流框架.

 最近幾年微服務(wù)架構(gòu)越來越火爆,逐漸被企業(yè)所采用。隨著軟件架構(gòu)的變化,對應(yīng)的軟件測試策略需要作何調(diào)整呢?在這里我來先介紹一下微服務(wù)的相關(guān)概念以及微服務(wù)的主流框架SpringCloud,讓大家對微服務(wù)有一個整體的認識,然后我再對如何進行微服務(wù)測試進行概要講解。相信大家認真閱讀本文后,對服微務(wù)一定會有從0到1的突破!

 

[[349156]]

 

微服務(wù)概念

微服務(wù)英文名稱Microservice,微服務(wù)架構(gòu)模式就是將整個Web應(yīng)用組織為一系列小的Web服務(wù)。這些小的Web服務(wù)可以獨立地編譯及部署,并通過各自暴露的API接口相互通訊。它們彼此相互協(xié)作,作為一個整體為用戶提供功能,卻可以獨立地進行擴展。

要點

  • 微服務(wù)的基本思想在于考慮圍繞著業(yè)務(wù)領(lǐng)域組件來創(chuàng)建應(yīng)用;
  • 微服務(wù)主要框架包括:Dubbo、Spring Cloud、 Istio ;
  • 對于互聯(lián)網(wǎng)談到微服務(wù)架構(gòu)一定會談到Devops即開發(fā)測試和部署運維的一體化;
  • 微服務(wù)簡化了開發(fā),它將創(chuàng)建復(fù)雜系統(tǒng)的任務(wù)切分為數(shù)十乃至上百個小服務(wù),這些小服務(wù)易于被小型的軟件工程師團隊所理解和修改。但是微服務(wù)并未真正地消除復(fù)雜性,而是將復(fù)雜性遷移到對大量服務(wù)的連接、管理和監(jiān)控上;
  • 微服務(wù)與SOA,微服務(wù)是SOA發(fā)展出來的產(chǎn)物,它是一種比較現(xiàn)代化的細粒度的SOA實現(xiàn)方式;

傳統(tǒng)服務(wù)與微服務(wù)的區(qū)別

 

一文搞定微服務(wù)測試本質(zhì)

 

大家可以看到,傳統(tǒng)服務(wù)是所有的功能都部署在一臺機器上(上圖左),通過增加服務(wù)器數(shù)量來擴容!而微服務(wù)是以業(yè)務(wù)為單位進行部署,不同的業(yè)務(wù)部署在不同的服務(wù)器上,業(yè)務(wù)使用頻繁的還可以使用更多的資源進行部署(上圖右側(cè),橘黃色部署了5個單元,而玫紅色只部署了一個單元),這樣就可以更合理的利用資源了!

傳統(tǒng)設(shè)計與微服務(wù)在數(shù)據(jù)庫方面設(shè)計的區(qū)別

 

一文搞定微服務(wù)測試本質(zhì)

 

大家可以看到傳統(tǒng)服務(wù)的所有功能對應(yīng)一個DB (上圖左),而微服務(wù)可以根據(jù)不同的業(yè)務(wù)設(shè)計不同的DB (上圖右,可以一個業(yè)務(wù)對應(yīng)一個獨立的DB)

微服務(wù)架構(gòu)設(shè)計核心

1:我們把整個系統(tǒng)根據(jù)業(yè)務(wù)拆分成幾個子系統(tǒng)。

2:每個子系統(tǒng)可以部署多個應(yīng)用,多個應(yīng)用之間使用負載均衡。

3:需要一個服務(wù)注冊中心,所有的服務(wù)都在注冊中心注冊,負載均衡也是通過在注冊中心注冊的服務(wù)來使用一定策略來實現(xiàn)。

4:所有的客戶端都通過同一個網(wǎng)關(guān)地址訪問后臺的服務(wù),通過路由配置,網(wǎng)關(guān)來判斷一個URL請求由哪個服務(wù)處理。請求轉(zhuǎn)發(fā)到服務(wù)上的時候也使用負載均衡。

5:服務(wù)之間有時候也需要相互訪問。例如有一個用戶模塊,其他服務(wù)在處理一些業(yè)務(wù)的時候,要獲取用戶服務(wù)的用戶數(shù)據(jù)。

6:需要一個斷路器,及時處理服務(wù)調(diào)用時的超時和錯誤,防止由于其中一個服務(wù)的問題而導(dǎo)致整體系統(tǒng)的癱瘓。

7:還需要一個監(jiān)控功能,監(jiān)控每個服務(wù)調(diào)用花費的時間等

SpringCloud

Spring Cloud是基于SpringBoot的一整套實現(xiàn)微服務(wù)的框架。他提供了微服務(wù)開發(fā)所需的配置管理、服務(wù)發(fā)現(xiàn)、斷路器、智能路由、微代理、控制總線、全局鎖、決策競選、分布式會話和集群狀態(tài)管理等組件。

官網(wǎng):https://springcloud.cc/

特點:

  • 分布式/版本化配置
  • 服務(wù)注冊和發(fā)現(xiàn)
  • 路由
  • service - to - service調(diào)用
  • 負載均衡
  • 斷路器
  • 分布式消息傳遞

SpringCloud包括的主要組件如下圖:

 

一文搞定微服務(wù)測試本質(zhì)

 

一個Spring Cloud 工程的pom配置文件如下,大家可以簡單的理解為在SpringCloud

工程的pom.xml中,你需要什么功能,把它直接引入工程就可以了

 

一文搞定微服務(wù)測試本質(zhì)

 

在這里由于我們主要介紹微服務(wù)概念,所以就不過多解釋springcloud相關(guān)的開發(fā)內(nèi)容了。

微服務(wù)測試

  • 前端UI

與傳統(tǒng)測試沒有區(qū)別,因為你只做功能那么你感受不到架構(gòu)的變化!

  • 服務(wù)端

微服務(wù)通常使用通過HTTP的REST來暴露,因此微服務(wù)的測試等價于接口測試。對微服務(wù)提供的接口進行功能、性能、安全測試,具體測試方法如下:

1.通過構(gòu)建請求調(diào)用各個微服務(wù)接口,可以通過編碼或者工具模擬的方式完成。

編碼:python(unittest+requests);Java(junit4+httpclient)

工具模擬:jMeter、soupUI、postman等

2.請求的驗證:除了驗證接口的返回值外,還要關(guān)注負載均衡(請求是否分發(fā)到多點應(yīng)用)

3.監(jiān)控:通過工具 SpringCloud Sleuth、 Turbine、Prometheus進行監(jiān)控

4.日志:通過ELK( ElasticStack )來集中化管理日志

  • 重點:

微服務(wù)架構(gòu)下,既需要保障各服務(wù)內(nèi)部每個模塊的完整性,又需要關(guān)注模塊間、服務(wù)間的交互。

  • 難點:

1.關(guān)聯(lián)性:微服務(wù)通常情況下會與多個微服務(wù)進行交互。當某服務(wù)發(fā)生變化時,會直接影響到依賴的其他服務(wù)。

2.可靠性:為了盡可能降低微服務(wù)間通信對網(wǎng)絡(luò)情況的高度依賴,降低因網(wǎng)絡(luò)不穩(wěn)定引起的故障率,設(shè)計微服務(wù)架構(gòu)時會設(shè)計隔離機制。

3.數(shù)據(jù)一致性:微服務(wù)是基于分布式系統(tǒng)設(shè)計的,這就需要考慮分布式系統(tǒng)數(shù)據(jù)一致性的問題。

 

責任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2022-09-21 16:56:16

設(shè)計模式微服務(wù)架構(gòu)

2023-11-21 08:37:09

2023-09-02 21:27:09

2022-11-09 09:15:31

ProtoBufGo語言

2020-03-26 09:18:54

高薪本質(zhì)因素

2021-08-13 05:50:01

ContainerdDockerKubernetes

2024-01-09 08:24:47

JMM核心線程

2021-10-25 16:01:01

Linux設(shè)備樹字符串

2021-03-28 18:40:02

LinuxWindowsJava

2019-09-23 10:51:14

JavaJava虛擬機Linux

2019-10-12 08:59:36

軟件DevOps技術(shù)

2022-08-17 18:25:37

Java分布式搜索引擎

2021-08-31 07:02:20

Diff算法DOM

2025-08-08 01:11:00

React組件通信

2021-10-29 11:30:31

補碼二進制反碼

2021-10-06 20:23:08

Linux共享內(nèi)存

2022-10-21 17:24:34

契約測試定位

2024-06-27 10:50:01

2018-09-14 09:23:03

微服務(wù)服務(wù)集成

2023-08-27 21:02:14

點贊
收藏

51CTO技術(shù)棧公眾號