


Regroupement de contrôleurs de communication réseau pour améliorer les capacités interactives d'équilibrage de charge, exemple de didacticiel
20.1 Présentation
ServerSuperIO n'avait à l'origine qu'un seul contrôleur réseau en mode de communication réseau. En mode automatique, en mode concurrent et en mode singleton, les données renvoyées sont traitées de manière asynchrone, et il n'y aura aucune question d'amélioration des performances. Cependant, en mode d'interrogation, un contrôleur de réseau doit exécuter l'envoi et la réception du pilote de périphérique un par un dans l'ordre, de sorte que le cycle d'interrogation peut être trop long et que la fréquence de lecture des données ne peut pas être atteinte.
Afin de résoudre les problèmes ci-dessus, la fonction de regroupement du contrôleur réseau est désormais ajoutée aux paramètres du pilote de périphérique. Le contrôleur réseau contrôlera le pilote de périphérique en fonction du nom de groupe défini par les paramètres du périphérique. Par exemple, en mode d'interrogation, il existe 1 000 pilotes de périphérique et le même nom de groupe peut être défini pour 10 pilotes de périphérique. Ces 10 pilotes de périphérique sont contrôlés par le même contrôleur réseau. Si les données sont lues toutes les 1 s, alors chacun est interrogé. Le cycle du pilote de périphérique est de 10 secondes, ce qui est similaire à celui des autres contrôleurs réseau.
20.2 Schéma du contrôleur réseau
Selon le ControllerGroup qui définit les paramètres réseau du pilote de périphérique, le pilote de périphérique peut être affecté pour s'exécuter dans différents contrôles réseau, et est applicable pour les modes d'interrogation, de contrôle automatique, de concurrence et de contrôle singleton.
20.3 Schéma du contrôleur de port série
À propos, le contrôleur de port série peut être attribué à différents contrôleurs de port série en définissant le numéro de port série du pilote de périphérique. Ce contrôleur ne peut être utilisé qu’en mode de contrôle d’interrogation.
20.4 Exemple de code de regroupement du contrôleur réseau du pilote de périphérique
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(); } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Depuis que Windows est devenu la plate-forme de jeu de choix, il est encore plus important d'identifier ses fonctionnalités orientées jeux. L'un d'eux est la possibilité de calibrer une manette Xbox One sur Windows 11. Grâce à l'étalonnage manuel intégré, vous pouvez vous débarrasser des problèmes de dérive, de mouvement aléatoire ou de performances et aligner efficacement les axes X, Y et Z. Si les options disponibles ne fonctionnent pas, vous pouvez toujours utiliser un outil tiers d'étalonnage du contrôleur Xbox One. Découvrons-le ! Comment calibrer ma manette Xbox sous Windows 11 ? Avant de continuer, assurez-vous de connecter votre manette à votre ordinateur et de mettre à jour les pilotes de votre manette Xbox One. Pendant que vous y êtes, installez également toutes les mises à jour de micrologiciel disponibles. 1. Utilisez le vent

PHP est un langage de programmation très populaire et CodeIgniter4 est un framework PHP couramment utilisé. Lors du développement d'applications Web, l'utilisation de frameworks est très utile. Elle peut accélérer le processus de développement, améliorer la qualité du code et réduire les coûts de maintenance. Cet article expliquera comment utiliser le framework CodeIgniter4. Installation du framework CodeIgniter4 Le framework CodeIgniter4 peut être téléchargé depuis le site officiel (https://codeigniter.com/). Vers le bas

Apprendre Laravel à partir de zéro : explication détaillée de l'invocation de la méthode du contrôleur Dans le développement de Laravel, le contrôleur est un concept très important. Le contrôleur sert de pont entre le modèle et la vue, responsable du traitement des demandes des itinéraires et du renvoi des données correspondantes à la vue pour affichage. Les méthodes des contrôleurs peuvent être appelées par des routes. Cet article présentera en détail comment écrire et appeler des méthodes dans les contrôleurs et fournira des exemples de code spécifiques. Tout d’abord, nous devons créer un contrôleur. Vous pouvez utiliser l'outil de ligne de commande Artisan pour créer

Dans Laravel, un contrôleur (Controller) est une classe utilisée pour implémenter certaines fonctions ; le contrôleur peut combiner la logique de traitement des requêtes associée dans une classe distincte. Certaines méthodes sont stockées dans le contrôleur pour implémenter certaines fonctions. Le contrôleur est appelé via le routage, et les fonctions de rappel ne sont plus utilisées ; le contrôleur est stocké dans le répertoire « app/Http/Controllers ».

Dans le guide d'apprentissage Laravel, l'appel des méthodes du contrôleur est un sujet très important. Les contrôleurs servent de pont entre le routage et les modèles et jouent un rôle essentiel dans l'application. Cet article présentera les meilleures pratiques en matière d’appel de méthode de contrôleur et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre. Commençons par comprendre la structure de base des méthodes de contrôleur. Dans Laravel, les classes de contrôleurs sont généralement stockées dans le répertoire app/Http/Controllers. Chaque classe de contrôleur en contient plusieurs.

Comment implémenter le regroupement de données et les fonctions statistiques en PHP Dans le processus de développement actuel, nous rencontrons souvent le besoin de regrouper et de compter les données. Qu'il s'agisse de regrouper des statistiques sur des données dans une base de données ou d'exploiter des données dans un tableau, PHP offre une multitude de fonctions et de méthodes pour répondre à nos besoins. Ce qui suit montrera comment regrouper et compter les données d’une base de données et d’un tableau en PHP. Regroupement de données et statistiques dans la base de données Supposons que nous ayons un tableau des performances des élèves avec la structure de tableau suivante : CREATETABLE`s

Dans le framework Yii, les contrôleurs jouent un rôle important dans le traitement des requêtes. En plus de gérer les requêtes de pages régulières, les contrôleurs peuvent également être utilisés pour gérer les requêtes Ajax. Cet article expliquera comment gérer les requêtes Ajax dans le framework Yii et fournira des exemples de code. Dans le framework Yii, le traitement des requêtes Ajax peut s'effectuer à travers les étapes suivantes : La première étape consiste à créer une classe contrôleur (Controller). Vous pouvez hériter de la classe de contrôleur de base yiiwebCo fournie par le framework Yii

Le framework Symfony est un framework PHP populaire conçu sur la base de l'architecture MVC (Model-View-Controller). Dans Symfony, les contrôleurs sont l'un des composants clés responsables du traitement des requêtes des applications Web. Les paramètres des contrôleurs sont très utiles lors du traitement des requêtes. Cet article explique comment utiliser les paramètres du contrôleur dans le framework Symfony. Connaissance de base des paramètres du contrôleur Les paramètres du contrôleur sont transmis au contrôleur via le routage. Le routage est un mappage des URI (Uniform Resource Identifiers) aux contrôleurs et
