本篇和大家分享的是一個(gè) 并發(fā)請求工具,并發(fā)往往代表的就是壓力,對(duì)于一些訂單量比較多的公司這種情況很普遍,也因此出現(xiàn)了很多應(yīng)對(duì)并發(fā)的解決方案如:分布式,隊(duì)列,數(shù)據(jù)庫鎖等;

對(duì)于沒有遇到過或者不可能線上來處理并發(fā)問題的我們來說,需要模擬這種環(huán)境,不錯(cuò)這就是寫并發(fā)請求工具的目的:

. 對(duì)于api接口做并發(fā)請求

. NetCore來寫的能跨平臺(tái)運(yùn)行

. 允許配置多個(gè)目標(biāo)地址,進(jìn)行同時(shí)并發(fā)請求

. 支持Get,Post請求方式(post參數(shù)支持:xml,json格式)

工具設(shè)計(jì)的原理

工具的全部代碼都開源至:https://github.com/shenniubuxing3/PressureTool(不妨標(biāo)個(gè)*),下面將舉例演示如何使用;工具設(shè)計(jì)的原理主要采用Task,通過配置目標(biāo)地址,請求數(shù)量來拆分成多個(gè)Task,以此完成并行的請求:

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開發(fā),動(dòng)畫培訓(xùn)

由上圖可以看出,該工具主要有3層樹形結(jié)構(gòu),最底層是真實(shí)發(fā)出對(duì)目標(biāo)url地址的請求,使用的Task,Task對(duì)于多核CPU來說效果更顯著;在講解例子前咋們先來看看配置文件對(duì)應(yīng)的實(shí)體類:

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開發(fā),動(dòng)畫培訓(xùn)

        		

網(wǎng)友評(píng)論