亚洲v欧美v另类v综合v日韩v,好看的黄色片,这里只有精品免费视频,特级做a爱片久久久久久

五分鐘技術(shù)趣談 | 物聯(lián)網(wǎng)平臺(tái)Modbus協(xié)議采樣命令下發(fā)并發(fā)性能測(cè)試方法
作者 | 移動(dòng)Labs2023-02-09

Modbus是一種串行通信協(xié)議,是Modicon公司(現(xiàn)在的施耐德電氣 Schneider Electric)于1979年為使用可編程邏輯控制器(PLC)通信而發(fā)表。Modbus已經(jīng)成為工業(yè)領(lǐng)域通信協(xié)議的業(yè)界標(biāo)準(zhǔn)(De facto),并且現(xiàn)在是工業(yè)電子設(shè)備之間常用的連接方式。

采樣命令

Modbus協(xié)議同樣也是物聯(lián)網(wǎng)平臺(tái)的流行協(xié)議之一,采樣命令作為Modbus協(xié)議的主要功能,其主要流程是設(shè)備在平臺(tái)設(shè)置周期采樣命令,平臺(tái)會(huì)周期性主動(dòng)對(duì)在線設(shè)備下發(fā)采樣命令。

我們?cè)跒樾郯步ㄔO(shè)物聯(lián)網(wǎng)平臺(tái)時(shí),正好平臺(tái)就有Modbus的能力,平臺(tái)交付就必須要測(cè)試Modbus的采樣命令并發(fā)。

物聯(lián)網(wǎng)平臺(tái)Modbus協(xié)議采樣命令下發(fā)流程如下:

創(chuàng)建設(shè)備,在平臺(tái)給設(shè)備設(shè)置采樣命令:采樣周期、功能編號(hào)、從機(jī)地址、數(shù)據(jù)長(zhǎng)度等信息。

設(shè)備上線后,平臺(tái)按照采樣周期對(duì)設(shè)備進(jìn)行周期性發(fā)送采樣命令。

設(shè)備收到采樣命令后將寄存器數(shù)據(jù)返回結(jié)果給平臺(tái),并保存采樣數(shù)據(jù)。

通常情況下我們做性能測(cè)試都是客戶(hù)端發(fā)起請(qǐng)求服務(wù)的響應(yīng)客戶(hù)端,而Modbus的采樣命令恰好相反,以往我們常用的性能測(cè)試工具就不可行了。

要如何才能測(cè)試服務(wù)的采樣命令的并發(fā)呢?

測(cè)試方法

為了測(cè)試物聯(lián)網(wǎng)平臺(tái)Modbus協(xié)議采樣命令并發(fā)性能,我們研究出了一種高并發(fā)的采樣命令并發(fā)性能測(cè)試方法。該方法采用異步IO的方式批量模擬設(shè)備連接服務(wù)器、接收采樣命令并響應(yīng)命令,并統(tǒng)計(jì)每秒接收的命令數(shù)量。技術(shù)實(shí)現(xiàn)細(xì)節(jié)如下:

1、通過(guò)API批量創(chuàng)建Modbus設(shè)備,并給每個(gè)設(shè)備創(chuàng)建n個(gè)采樣命令。即無(wú)需提前創(chuàng)建設(shè)備和設(shè)備的采樣命令;

2、批量初始化設(shè)備的socket連接,socket設(shè)置為非阻塞,生成socket列表。采用異步IO,減少多線程線程切換帶來(lái)的資源消耗,提升CPU利用率;

3、同時(shí)啟動(dòng)以下三個(gè)線程:

①批量設(shè)備注冊(cè)線程:批量上報(bào)注冊(cè)報(bào)文,設(shè)備注冊(cè)完成后線程退出;

②采樣命令條數(shù)統(tǒng)計(jì)線程:所有設(shè)備注冊(cè)成功后,每秒統(tǒng)計(jì)一次最近1秒內(nèi)收到采樣命令條數(shù);

③采樣命令接收處理線程:采用select批量管理設(shè)備socket列表,接收并立即響應(yīng)采樣命令,并實(shí)時(shí)記錄采樣命令條數(shù)。select模型為非阻塞式IO,能夠一定程度上減少服務(wù)器瞬間的并發(fā)線程數(shù),從而提高CPU執(zhí)行效率;

Python代碼示例(片段)

Python代碼示例(片段)

4、根據(jù)運(yùn)行設(shè)備數(shù)量以及平均每秒接收到采樣命令數(shù)量來(lái)判斷平臺(tái)是否滿足當(dāng)前的采樣命令的處理性能。性能滿足的條件下預(yù)期結(jié)果為

預(yù)期每秒命令接收數(shù)量 ≈ 設(shè)備數(shù)量 * n

逐步增加設(shè)備數(shù)量,當(dāng)預(yù)期每秒命令接收數(shù)量 > 設(shè)備數(shù)量 * n時(shí),即服務(wù)已達(dá)到瓶頸。則最終測(cè)試服務(wù)的采樣命令最大并發(fā)量為,滿足預(yù)期結(jié)果時(shí)的設(shè)備最大接入量 * n。

測(cè)試流程圖

該測(cè)試方法優(yōu)點(diǎn):

1、無(wú)需單獨(dú)添加創(chuàng)建設(shè)備和設(shè)備的采樣命令,簡(jiǎn)化了Modbus協(xié)議采樣命令性能測(cè)試的準(zhǔn)備工作;

2、在設(shè)備端統(tǒng)計(jì)并發(fā)量,無(wú)需在服務(wù)端增加任何統(tǒng)計(jì)邏輯;

3、采用模擬設(shè)備,無(wú)需準(zhǔn)備大量真實(shí)設(shè)備,降低了Modbus協(xié)議采樣命令性能測(cè)試的成本;

4、通過(guò)非阻塞式IO,顯著提升Modbus協(xié)議采樣命令并發(fā)性能測(cè)試的設(shè)備響應(yīng)速度,解決Modbus協(xié)議采樣命令并發(fā)性能測(cè)試高并發(fā)狀態(tài)下的資源浪費(fèi)問(wèn)題;

5、設(shè)備響應(yīng)速度的提升,有效提高M(jìn)odbus協(xié)議采樣命令并發(fā)性能測(cè)試的準(zhǔn)確度。

我們采用此種方法編寫(xiě)的Python代碼,單個(gè)腳本可以支撐1秒內(nèi)1萬(wàn)+次的命令處理能力。在雄安物聯(lián)網(wǎng)平臺(tái)的性能測(cè)試中起到了非常好的作用,同時(shí)運(yùn)行10個(gè)腳本,完成了雄安平臺(tái)Modbus協(xié)議采樣命令10萬(wàn)并發(fā)的測(cè)試。

熱門(mén)文章
2022年,長(zhǎng)武縣農(nóng)業(yè)農(nóng)村局依托省級(jí)現(xiàn)代農(nóng)業(yè)產(chǎn)業(yè)園創(chuàng)建,與西安電子科技大學(xué)合作實(shí)施數(shù)字農(nóng)業(yè)項(xiàng)目已建成投入應(yīng)用...
2023-02-09
X
主站蜘蛛池模板: 国产精品资源在线观看网站| yy6080伦理试| 99久久99久久久精品齐齐鬼色| 成人欧美一区二区三区影院视频| 操美女逼网站| 暖暖中国高清在线中文下载| 全黄一级裸片在线网站| 色窝窝精品国产人妻在线| 亚洲美女aⅴ久久久91| 国产亚洲精品成人婷婷久久小说 | 男s调教女m| 色哟哟| 窑子开张了(H)by吃肉肉长高高| 美女脱个精光图片| 啊啊啊慢点疼| 陪读妇乱子交换小说黄文| 国产精品偷伦视频| 【免費A漫-禁漫天堂| 他掀开裙子舌头进去添的电影| 麻豆传播媒体app入口下载官网免费| 天美传媒???片| 婷婷AV一区二区三区777?| 中文字幕国产综合| 国产精品久久久久久福利漫画| 爆操女老师| 自拍偷自第11页| 日韩精品 一区二区三区| www亚洲天堂| 国产成人隶青精品999视频| 一级毛片A级黄A片在线甜美食 | 宝贝别忍着喷出来h文| 不许穿内裤我好cao你| 国产精品亚洲AV三区八戒色欲| 国模大尺度私拍套图| 91精品国产网曝事件门| 黑人大战白人伦理| 成年福利片120秒体验区| 小婷的性日记生活| 护士日本xx厕所| 亚洲近親偷子亂伦| 男人露j直播|