網路通訊控制器分組,提高互動的負載平衡能力實例教程
20.1 概述
ServerSuperIO原來在網路通訊模式下,只有一個網路控制器,在自控模式、並發模式和單例模式下時都是非同步處理返回的數據,並不會出現效能問題。但是在輪詢模式下,一個網路控制器要依序逐一操作設備驅動的傳送和接收,這樣就會出現輪詢週期過長,達不到讀取資料頻率的情況。
為了解決上述問題,現在將裝置驅動的參數增加了網路控制器分組功能,網路控制器會根據裝置參數設定的分組名稱控制裝置驅動。例如輪詢模式下,有1000個設備驅動,可以每10個設備驅動設定相同的分組名稱,這10個設備驅動受控於同一個網絡控制器,如果每間隔1s讀取一次數據,那麼每個設備驅動的輪詢週期是10s鐘,其他網路控制器類似。
20.2 網路控制器示意圖
依據設定裝置驅動網路參數的ControllerGroup,可將裝置驅動程式指派到不同的網路控制中運行,且適用於輪詢、自控、並發和單例控制模式。
20.3 串口控制器示意圖
順便提一下串口控制器,透過設定裝置驅動的串口號決定被指派到不同的串口控制器,此控制器只能適用於輪詢控制模式。
20.4 裝置驅動網路控制器分組範例程式碼
static void Main(string[] args) { string deviceID = "2"; DeviceDriver dev3 = new DeviceDriver(); dev3.DeviceParameter.DeviceName = "设备2"; dev3.DeviceParameter.DeviceAddr = 0; dev3.DeviceParameter.DeviceID = deviceID; dev3.DeviceParameter.DeviceCode = deviceID; dev3.DeviceDynamic.DeviceID = deviceID; dev3.DeviceParameter.NET.RemoteIP = "127.0.0.1"; dev3.DeviceParameter.NET.RemotePort = 9600; dev3.DeviceParameter.NET.ControllerGroup = "G2"; dev3.CommunicateType = CommunicateType.NET; dev3.DeviceParameter.NET.WorkMode = WorkMode.TcpServer; dev3.Initialize(deviceID); deviceID = "3"; DeviceDriver dev4 = new DeviceDriver(); dev4.DeviceParameter.DeviceName = "设备3"; dev4.DeviceParameter.DeviceAddr = 0; dev4.DeviceParameter.DeviceID = deviceID; dev4.DeviceParameter.DeviceCode = deviceID; dev4.DeviceDynamic.DeviceID = deviceID; dev4.DeviceParameter.NET.RemoteIP = "127.0.0.1"; dev4.DeviceParameter.NET.RemotePort = 9600; dev4.DeviceParameter.NET.ControllerGroup = "G3"; dev4.CommunicateType = CommunicateType.NET; dev4.Initialize(deviceID); IServer server = new ServerManager().CreateServer(new ServerConfig() { ServerName = "服务1", ComReadTimeout = 1000, ComWriteTimeout = 1000, NetReceiveTimeout = 1000, NetSendTimeout = 1000, ControlMode = ControlMode.Loop, SocketMode = SocketMode.Tcp, StartReceiveDataFliter = false, ClearSocketSession = true, StartCheckPackageLength = false, CheckSameSocketSession = false, }); server.AddDeviceCompleted += server_AddDeviceCompleted; server.DeleteDeviceCompleted += server_DeleteDeviceCompleted; server.SocketConnected+=server_SocketConnected; server.SocketClosed+=server_SocketClosed; server.Start(); server.AddDevice(dev3); server.AddDevice(dev4); while ("exit"==Console.ReadLine()) { server.Stop(); } }
以上是網路通訊控制器分組,提高互動的負載平衡能力實例教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

由於Windows已成為首選的遊戲平台,因此確定其面向遊戲的功能就顯得尤為重要。其中之一是能夠在Windows11上校準XboxOne控制器。借助內建的手動校準,您可以擺脫漂移、隨機移動或效能問題,並有效地對齊X、Y和Z軸。如果可用選項不起作用,您可以隨時使用第三方XboxOne控制器校準工具。讓我們來了解一下!如何在Windows11上校準我的Xbox控制器?在繼續操作之前,請確保將控制器連接到電腦並更新XboxOne控制器的驅動程式。當您使用它時,也要安裝任何可用的韌體更新。 1.使用Wind

PHP是一種非常流行的程式語言,而CodeIgniter4是一種常用的PHP框架。在開發Web應用程式時,使用框架是非常有幫助的,它可以加速開發過程、提高程式碼品質、降低維護成本。本文將介紹如何使用CodeIgniter4框架。安裝CodeIgniter4框架CodeIgniter4框架可以從官方網站(https://codeigniter.com/)下載。下

從零開始學習Laravel:控制器方法呼叫詳解在Laravel的開發中,控制器是一個非常重要的概念。控制器起到了連接模型和視圖的橋樑作用,負責處理來自路由的請求,並返回相應的資料給視圖展示。控制器中的方法可以被路由調用,這篇文章將詳細介紹如何編寫並調用控制器中的方法,同時會提供特定的程式碼範例。首先,我們需要建立一個控制器。可以使用Artisan命令列工具來生

在laravel中,控制器(Controller)是一個類,用來實現一定的功能;控制器能將相關的請求處理邏輯組成一個單獨的類別。控制器中存放中一些方法,實現一定的功能,透過路由呼叫控制器,不再使用回呼函數;控制器被存放在「app/Http/Controllers」目錄中。

在Laravel學習指南中,控制器方法的呼叫是一個非常重要的主題。控制器扮演著連接路由和模型的橋樑的角色,在應用程式中起著至關重要的作用。本文將介紹控制器方法呼叫的最佳實踐,並提供具體的程式碼範例幫助讀者更好地理解。首先,讓我們來了解控制器方法的基本結構。在Laravel中,控制器類別通常存放在app/Http/Controllers目錄下,每個控制器類別包含多個

如何在PHP中實現資料的分組和統計功能在實際的開發過程中,經常會遇到對資料進行分組和統計的需求。無論是對資料庫中的資料進行分組統計,還是對數組中的資料進行操作,PHP提供了豐富的函數和方法來滿足我們的需求。以下將分別示範如何在PHP中將資料庫和陣列資料分組和統計。資料庫中的資料分組和統計假設我們有一個學生成績表,表結構如下:CREATETABLE`s

在Yii框架中,控制器(Controllers)扮演著處理請求的重要角色。除了處理常規的頁面請求之外,控制器還可以用於處理Ajax請求。本文將介紹在Yii框架中處理Ajax請求的方法,並提供程式碼範例。在Yii框架中,處理Ajax請求可以透過以下步驟進行:第一步,建立一個控制器(Controller)類別。可以透過繼承Yii框架提供的基礎控制器類別yiiwebCo

Symfony框架是一個受歡迎的PHP框架,它是基於MVC(模型-視圖-控制器)架構設計的。在Symfony中,控制器是負責處理Web應用程式請求的關鍵元件之一。控制器中的參數在處理請求時非常有用,本文將介紹如何在Symfony框架中使用控制器的參數。控制器參數的基礎知識控制器的參數是透過路由傳遞到控制器中的。路由是一個將URI(統一資源標識符)映射到控制器和
