中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

網(wǎng)站建設(shè)開發(fā)公司有哪些企業(yè)站seo報價

網(wǎng)站建設(shè)開發(fā)公司有哪些,企業(yè)站seo報價,項目建設(shè)的背景怎么寫,wordpress 博客同步1 高并發(fā)帶來的問題 在微服務(wù)架構(gòu)中,我們將業(yè)務(wù)拆分成一個個的服務(wù),服務(wù)與服務(wù)之間可以相互調(diào)用,但是由于網(wǎng)絡(luò) 原因或者自身的原因,服務(wù)并不能保證服務(wù)的100%可用,如果單個服務(wù)出現(xiàn)問題,調(diào)用這個服務(wù)就會出…

1 高并發(fā)帶來的問題

在微服務(wù)架構(gòu)中,我們將業(yè)務(wù)拆分成一個個的服務(wù),服務(wù)與服務(wù)之間可以相互調(diào)用,但是由于網(wǎng)絡(luò)
原因或者自身的原因,服務(wù)并不能保證服務(wù)的100%可用,如果單個服務(wù)出現(xiàn)問題,調(diào)用這個服務(wù)就會出現(xiàn)網(wǎng)絡(luò)延遲,此時若有大量的網(wǎng)絡(luò)涌入,會形成任務(wù)堆積,最終導(dǎo)致服務(wù)癱瘓。

接下來,我們來模擬一個高并發(fā)的場景
1 編寫java代碼

@RestController
@Slf4j
public class OrderController2 {@Autowiredprivate OrderService orderService;@Autowiredprivate ProductService productService;@RequestMapping("/order/prod/{pid}")public Order order(@PathVariable("pid") Integer pid) {log.info("接收到{}號商品的下單請求,接下來調(diào)用商品微服務(wù)查詢此商品信息", pid);
//調(diào)用商品微服務(wù),查詢商品信息Product product = productService.findByPid(pid);log.info("查詢到{}號商品的信息,內(nèi)容是:{}", pid, JSON.toJSONString(product));//模擬一次網(wǎng)絡(luò)延時try {Thread.sleep(100);} catch (InterruptedException e) {e.printStackTrace();}//下單(創(chuàng)建訂單)Order order = new Order();order.setUid(1);order.setUsername("測試用戶");order.setPid(pid);order.setPname(product.getPname());order.setPprice(product.getPprice());order.setNumber(1);//為了不產(chǎn)生太多垃圾數(shù)據(jù),暫時不做訂單保存//orderService.createOrder(order);log.info("創(chuàng)建訂單成功,訂單信息為{}", JSON.toJSONString(order));return order;}@RequestMapping("/order/message")public String message() {return "高并發(fā)下的問題測試";}
}

2 修改配置文件中tomcat的并發(fā)數(shù)

server:
port: 8091
tomcat:max-threads: 10 ?#tomcat的最大并發(fā)值修改為10,默認是200

3 接下來使用壓測工具,對請求進行壓力測試
下載地址https://jmeter.apache.org/

  • 第一步:修改配置,并啟動軟件

進入bin目錄,修改jmeter.properties文件中的語言支持為language=zh_CN,然后點擊jmeter.bat
啟動軟件。

  • 第二步:添加線程組?

  • ?第三步:配置線程并發(fā)數(shù)

  • ?第四步:添加Http取樣

  • ?第五步:配置取樣,并啟動測試

?4 訪問message方法觀察效果
結(jié)論:
?此時會發(fā)現(xiàn), 由于order方法囤積了大量請求, 導(dǎo)致message方法的訪問出現(xiàn)了問題,這就是服務(wù)雪
崩的雛形。

2 服務(wù)雪崩效應(yīng)

在分布式系統(tǒng)中,由于網(wǎng)絡(luò)原因或自身的原因,服務(wù)一般無法保證 100% 可用。如果一個服務(wù)出現(xiàn)了
問題,調(diào)用這個服務(wù)就會出現(xiàn)線程阻塞的情況,此時若有大量的請求涌入,就會出現(xiàn)多條線程阻塞等待,進而導(dǎo)致服務(wù)癱瘓。
由于服務(wù)與服務(wù)之間的依賴性,故障會傳播,會對整個微服務(wù)系統(tǒng)造成災(zāi)難性的嚴重后果,這就是
服務(wù)故障的 “雪崩效應(yīng)” 。

?雪崩發(fā)生的原因多種多樣,有不合理的容量設(shè)計,或者是高并發(fā)下某一個方法響應(yīng)變慢,亦或是某臺機器的資源耗盡。我們無法完全杜絕雪崩源頭的發(fā)生,只有做好足夠的容錯,保證在一個服務(wù)發(fā)生問題,不會影響到其它服務(wù)的正常運行。也就是"雪落而不雪崩"。

3 常見容錯方案

要防止雪崩的擴散,我們就要做好服務(wù)的容錯,容錯說白了就是保護自己不被豬隊友拖垮的一些措
施, 下面介紹常見的服務(wù)容錯思路和組件。
常見的容錯思路
常見的容錯思路有隔離、超時、限流、熔斷、降級這幾種,下面分別介紹一下。

(1)隔離

它是指將系統(tǒng)按照一定的原則劃分為若干個服務(wù)模塊,各個模塊之間相對獨立,無強依賴。當有故
障發(fā)生時,能將問題和影響隔離在某個模塊內(nèi)部,而不擴散風(fēng)險,不波及其它模塊,不影響整體的
系統(tǒng)服務(wù)。常見的隔離方式有:線程池隔離和信號量隔離.

(2)超時

在上游服務(wù)調(diào)用下游服務(wù)的時候,設(shè)置一個最大響應(yīng)時間,如果超過這個時間,下游未作出反應(yīng),
就斷開請求,釋放掉線程。

(3) 限流

限流就是限制系統(tǒng)的輸入和輸出流量已達到保護系統(tǒng)的目的。為了保證系統(tǒng)的穩(wěn)固運行,一旦達到
的需要限制的閾值,就需要限制流量并采取少量措施以完成限制流量的目的。

(4)熔斷

在互聯(lián)網(wǎng)系統(tǒng)中,當下游服務(wù)因訪問壓力過大而響應(yīng)變慢或失敗,上游服務(wù)為了保護系統(tǒng)整
體的可用性,可以暫時切斷對下游服務(wù)的調(diào)用。這種犧牲局部,保全整體的措施就叫做熔斷。

?服務(wù)熔斷一般有三種狀態(tài):

  • 熔斷關(guān)閉狀態(tài)(Closed)

服務(wù)沒有故障時,熔斷器所處的狀態(tài),對調(diào)用方的調(diào)用不做任何限制

  • 熔斷開啟狀態(tài)(Open)

后續(xù)對該服務(wù)接口的調(diào)用不再經(jīng)過網(wǎng)絡(luò),直接執(zhí)行本地的fallback方法

  • 半熔斷狀態(tài)(Half-Open)

嘗試恢復(fù)服務(wù)調(diào)用,允許有限的流量調(diào)用該服務(wù),并監(jiān)控調(diào)用成功率。如果成功率達到預(yù)
期,則說明服務(wù)已恢復(fù),進入熔斷關(guān)閉狀態(tài);如果成功率仍舊很低,則重新進入熔斷關(guān)閉狀
態(tài)。

(5)降級

降級其實就是為服務(wù)提供一個托底方案,一旦服務(wù)無法正常調(diào)用,就使用托底方案。

?常見的容錯組件

  • Hystrix

Hystrix是由Netflix開源的一個延遲和容錯庫,用于隔離訪問遠程系統(tǒng)、服務(wù)或者第三方庫,防止
級聯(lián)失敗,從而提升系統(tǒng)的可用性與容錯性。

  • Resilience4J

Resilicence4J一款非常輕量、簡單,并且文檔非常清晰、豐富的熔斷工具,這也是Hystrix官方推
薦的替代產(chǎn)品。不僅如此,Resilicence4j還原生支持Spring Boot 1.x/2.x,而且監(jiān)控也支持和
prometheus等多款主流產(chǎn)品進行整合。

  • Sentinel

Sentinel 是阿里巴巴開源的一款斷路器實現(xiàn),本身在阿里內(nèi)部已經(jīng)被大規(guī)模采用,非常穩(wěn)定。
下面是三個組件在各方面的對比:

?

http://www.risenshineclean.com/news/3558.html

相關(guān)文章:

  • wamp 設(shè)置多個網(wǎng)站愛鏈在線
  • 網(wǎng)站設(shè)計需要考慮哪些基本原則知乎關(guān)鍵詞排名優(yōu)化
  • 如何制作手機免費網(wǎng)站模板下載排名網(wǎng)
  • 日本網(wǎng)站服務(wù)器安徽網(wǎng)站關(guān)鍵字優(yōu)化
  • 網(wǎng)站建設(shè)基礎(chǔ)策劃書做游戲推廣怎么找客戶
  • 深圳康福特戶外家具營銷型網(wǎng)站seo教程免費
  • 想做一個駕校的招生網(wǎng)站應(yīng)該怎么做seo實戰(zhàn)教程
  • 網(wǎng)站后臺密碼錯誤今天重要新聞
  • 廣西網(wǎng)站seo工具下載
  • 加國無憂51工作網(wǎng)seo顧問是干什么
  • 醫(yī)療網(wǎng)站建設(shè)焦作網(wǎng)絡(luò)推廣哪家好
  • app開發(fā)長沙seo營銷外包
  • 荊軻網(wǎng)絡(luò)做網(wǎng)站瀏覽器搜索引擎大全
  • 徐州銅山區(qū)seo模擬點擊軟件
  • 深圳服裝外貿(mào)公司廣州網(wǎng)站優(yōu)化關(guān)鍵詞排名
  • 如何引用404做網(wǎng)站谷歌廣告聯(lián)盟一個月能賺多少
  • 微信公眾號 做不了微網(wǎng)站嗎seo任務(wù)
  • jsp ajax網(wǎng)站開發(fā)典型實例電商seo引流
  • 商務(wù)網(wǎng)站開發(fā)步驟搜索引擎有哪些平臺
  • 武漢網(wǎng)站建設(shè)公司哪家專業(yè)重慶網(wǎng)站優(yōu)化軟件
  • 外包軟件開發(fā)一鍵優(yōu)化軟件
  • 我的網(wǎng)站dede網(wǎng)絡(luò)推廣要求
  • 溫州網(wǎng)站建設(shè)制作公司磁力島引擎
  • 質(zhì)量好網(wǎng)站建設(shè)商家seo怎么做推廣
  • 海晏網(wǎng)站制作外鏈收錄網(wǎng)站
  • 上海專業(yè)網(wǎng)站建設(shè)公百度一下你就知道百度一下
  • 門戶網(wǎng)站開發(fā) 項目實施方案全網(wǎng)推廣平臺有哪些
  • 不懂網(wǎng)站怎么做平臺項鏈seo關(guān)鍵詞
  • PHP 網(wǎng)站開發(fā) 重點知識鏈接生成二維碼
  • 怎樣做自己的公司網(wǎng)站百度在線