Configuration du serveur et architecture système

// Montre intelligente / Traceur GPS / RFID / Appareils IoT

Le système de surveillance électronique Traxbean est une plateforme de surveillance de la sécurité et de la santé basée sur l'architecture SaaS, conçue spécifiquement pour offrir une solution de surveillance complète aux personnes concernées. Cette plateforme repose principalement sur des montres intelligentes, des traceurs GPS intelligents, des balises Bluetooth et des appareils IoT pour surveiller en temps réel la localisation des personnes, leurs comportements et leurs indicateurs de santé. Nos solutions comprennent :

Surveillance électronique pour la réinsertion sociale : Surveillance des personnes en liberté conditionnelle en dehors de la prison.

Surveillance des travailleurs sur les chantiers de construction, les mines et les grands sites.

Surveillance des personnes âgées et des groupes spéciaux.


Traxbean propose des options de service flexibles, les clients peuvent utiliser directement notre plateforme pour fournir des services à leurs clients finaux, ou choisir un déploiement privé. Que ce soit en utilisant les serveurs cloud de Traxbean ou en effectuant un déploiement privé, nous pouvons fournir des services hautement personnalisés, y compris l'identification de la marque du client, l'interface de connexion, la langue du pays et la personnalisation des fonctionnalités et du style de l'interface. De plus, Traxbean propose non seulement une interface de connexion Web, mais a également développé des applications mobiles, et fournit des solutions d'affichage LED grand écran pour les clients en déploiement privé, largement utilisées dans les centres d'appels.


Le système Traxbean adopte une conception distribuée avancée, offrant une grande flexibilité et extensibilité, prenant en charge des connexions simultanées de niveau million, capable de servir simultanément des milliers d'entreprises, en devenant le choix idéal pour les grandes plateformes de surveillance électronique. Dans le cadre des déploiements privés, tous les composants et bases de données peuvent être installés sur un seul serveur, réduisant ainsi les coûts d'utilisation et la complexité de la maintenance.


De plus, Traxbean peut également fournir une API RESTful aux plateformes tierces ou aux applications mobiles, simplifiant le processus d'intégration des systèmes des clients et facilitant l'interopérabilité avec d'autres systèmes.

Plateforme de localisation intelligente des employés Traxbean

En fonction des exigences de charge des différentes montres intelligentes et appareils IoT, le système de surveillance électronique Traxbean peut être déployé individuellement sur un seul serveur lorsque le nombre d'appareils est faible et le nombre d'utilisateurs est faible. L'architecture du système est principalement composée de trois modules principaux :

1. Passerelle : responsable de la communication avec les montres intelligentes et les appareils IoT pour assurer la transmission en temps réel des données.

2. API : en tant que couche centrale de la base de données et de la logique métier, toutes les interactions de service passent par ce module.

3. Application : fournit une interface de gestion et des flux métier pour permettre aux utilisateurs d'effectuer des opérations et de surveiller.


Le système entier est développé en Node.js, utilisant TypeScript comme langage de développement. La base de données métier utilise MySQL, tout en intégrant Redis pour la gestion des files d'attente et du cache afin d'optimiser les performances. De plus, MongoDB est utilisé pour stocker les données relatives aux appareils, y compris les données de localisation, d'état, de santé et d'alarme, entre autres. MongoDB est la base de données la plus sollicitée en termes de fréquence d'accès et de volume de requêtes, la conception du système prenant en compte à la fois l'efficacité des requêtes et la sauvegarde sécurisée et flexible des données à long terme.

Mode de déploiement d'un seul serveur pour le logiciel de la plateforme

Le système de surveillance électronique Traxbean est un logiciel indépendant de la plateforme qui peut fonctionner sur des serveurs Linux et Windows. En prenant l'exemple de la prise en charge de 5000 montres intelligentes (taux de connexion simultanée de 80 %), les configurations recommandées du serveur sont les suivantes :

Serveur Windows :

- CPU : 8 cœurs ≥ 2,5 GHz, mémoire : ≥ 32 Go, disque SSD ≥ 500 Go, IOPS ≥ 5000, système d'exploitation : Windows Server 2016 ou ultérieur.

- Logiciels : Node.js, PM2, Nginx, MySQL, MongoDB, Redis.


Serveur Linux :

- CPU : 8 cœurs ≥ 2,5 GHz, mémoire : ≥ 32 Go, disque SSD ≥ 500 Go, IOPS ≥ 5000, système d'exploitation : Ubuntu 20.04 ou ultérieur, ou CentOS 8.0 ou ultérieur.

- Logiciels : Node.js, PM2, Nginx, MySQL, MongoDB, Redis.

Cette configuration garantit un fonctionnement efficace du système et répond aux besoins de conservation des données historiques pendant six mois.

Exigences du serveur pour la plateforme

Nous servons principalement des clients professionnels qui ont besoin de gérer un grand nombre d'appareils connectés, tels que des montres intelligentes et d'autres appareils IoT. Pour ce faire, les clients déploient généralement trois serveurs ou plus pour exécuter la plateforme Traxbean, afin d'assurer un nombre de connexions simultanées plus élevé, tout en prenant en compte la sauvegarde des données, la reprise après sinistre et la récupération rapide en cas de panne.


Bien que cette architecture soit complexe et ne puisse pas être détaillée dans un seul article, nous pouvons fournir une idée générale du déploiement. Nous recommandons de déployer la base de données, la passerelle et l'application sur trois serveurs distincts. Les composants API sont installés sur le serveur où se trouve la base de données principale, pour améliorer l'efficacité de l'accès aux données et simplifier la maintenance. Le serveur de passerelle installe également MongoDB et Redis, car la passerelle doit gérer les services de file d'attente et les données montantes de nombreux appareils, ce qui permet d'améliorer l'efficacité du traitement.


Cette configuration d'architecture à trois serveurs est similaire à la configuration de serveurs mentionnée précédemment et peut gérer de 3 à 5 fois plus de connexions simultanées qu'un seul serveur. Pour plus de détails, n'hésitez pas à consulter nos ingénieurs.

Architecture multi-serveurs distribuée

Quand il est nécessaire de gérer un nombre plus élevé d'appareils en ligne en même temps, l'architecture d'un seul serveur ou de trois serveurs peut ne pas être en mesure de traiter efficacement un énorme débit de données. Continuer à utiliser cette architecture pourrait entraîner un crash du système, une augmentation des retards de données et une diminution significative de la vitesse des requêtes. Par conséquent, nous devons aborder ces problèmes du côté de la passerelle.


Nous allons introduire un équilibreur de charge pour distribuer le débit de données massif à plusieurs serveurs pour traitement. L'introduction de l'équilibreur de charge nous permet d'étendre dynamiquement les serveurs en fonction de l'augmentation du nombre d'appareils en ligne, sans perturber le fonctionnement normal du système. Cette capacité d'extension dynamique améliore la flexibilité et la scalabilité du système.


Pour accélérer davantage l'efficacité du traitement des données, MongoDB, qui stocke les données des appareils, sera déployé sur le même serveur que la passerelle. MongoDB sera configuré en Replica Set avec d'autres instances MongoDB pour former un ensemble de réplicas. Cette configuration améliore non seulement la redondance et la disponibilité des données, mais elle augmente également considérablement l'efficacité de la requête des données au niveau de l'application, garantissant que le système peut toujours répondre rapidement même en cas de charge élevée. Cette conception d'architecture combine l'équilibre de charge et une solution de stockage de données efficace, répondant aux besoins de gestion d'appareils à grande échelle.

La répartition de charge de la couche passerelle pour prendre en charge une capacité de traitement à haute concurrence

Lorsque la plateforme Traxbean est confrontée à des problèmes plus complexes, tels que le service de clients du monde entier, le traitement de grandes quantités d'appareils en ligne et la réponse aux besoins des clients de différentes régions et pays, il n'est pas possible de répondre à ces exigences avec seulement un ensemble de répartiteurs de charge. Pour cela, nous devons déployer des centres de données sur chaque continent, en veillant à ce que chaque région dispose de serveurs pour assurer un traitement efficace des données.


Recevoir des données dans des centres de données locaux peut considérablement améliorer la vitesse de réponse et l'efficacité de transfert des données. En construisant une architecture de réplication entre les centres de données principaux, nous pouvons réaliser une synchronisation en temps réel des données. Cette architecture garantit la ponctualité des données mondiales, évitant toute perte de données due aux retards du réseau. Par exemple, lorsque les utilisateurs de la filiale asiatique consultent des données situées en Europe, l'architecture de réplication peut réduire efficacement les délais de requête, améliorant ainsi les performances globales du système.


De plus, l'utilisation de cette architecture distribuée renforce la capacité de tolérance aux pannes et la scalabilité du système, en permettant l'ajout dynamique de serveurs pour répondre à la croissance continue des appareils en ligne et des demandes des utilisateurs. La combinaison de connexions à haut débit entre les centres de données et de la configuration des répartiteurs de charge permet à l'ensemble du système de s'adapter de manière flexible aux besoins de différentes régions, garantissant ainsi l'efficacité et la stabilité du traitement des données. Le design architectural global est illustré dans le schéma ci-dessous.

Conception d'architecture distribuée multi-centres de données à travers le monde

Dans un scénario où un groupe gère un grand nombre d'appareils en ligne, les utilisateurs peuvent être répartis dans différentes régions et fuseaux horaires, effectuant fréquemment des requêtes de données. Par conséquent, en plus de s'assurer que la passerelle de réception des données des appareils possède une capacité de répartition de charge efficace, notre conception doit également inclure une répartition de charge au niveau de l'application.


Au niveau de l'application, nous avons besoin non seulement d'un répartiteur de charge pour distribuer intelligemment les requêtes vers différents serveurs, mais aussi de localiser autant que possible le traitement des données pour réduire les retards. Pour les données fréquemment consultées, nous adopterons une architecture de lecture-écriture séparée, la base de données principale étant chargée de traiter les opérations d'écriture, tandis que la base de données secondaire se concentrera sur les requêtes de lecture. Ce mode de fonctionnement garantit la cohérence des données tout en améliorant l'efficacité des requêtes grâce à la redondance des données, assurant ainsi une réponse rapide du système en cas de forte affluence.


En outre, compte tenu du besoin de stocker un grand nombre d'images et de fichiers vidéo dans le système, nous devons optimiser la stratégie de gestion des fichiers. Il n'est pas possible de synchroniser directement les fichiers avec les différents serveurs d'application derrière le répartiteur de charge, c'est pourquoi nous introduirons une solution de stockage d'objets (comme AWS S3 ou un service similaire) pour stocker et gérer les fichiers volumineux. Cela permet non seulement de soulager la charge des serveurs d'application, mais également d'améliorer la vitesse d'accès aux fichiers grâce à un CDN (réseau de diffusion de contenu), garantissant ainsi aux utilisateurs une vitesse de téléchargement et de visualisation rapide des contenus multimédias, où qu'ils se trouvent.


En résumé, notre conception ne se limite pas seulement au traitement efficace des données et à la répartition de charge, mais prend également en compte l'optimisation de la gestion et du stockage des fichiers, afin de construire une architecture système efficace, flexible et capable de répondre mondialement.

Architecture intégrée de l'équilibrage de charge au niveau de l'application et du CDN

ThinkRace is a smart watch manufacturing factory, although we are not a traditional software company, but after more than ten years of hard work and perseverance, we have participated in hundreds of large projects, including important events such as the World Special Olympics. Our partners are all over the world, closely cooperating with more than 20 telecommunications operators, and our products and software have been widely used in more than 50 countries, including some countries' health and justice departments.


In this process, we have always believed that protecting the safety and health of workers is our mission and responsibility. Our products and software help manage hundreds of construction sites, ensuring that the safety of every worker is taken care of and guaranteed. This is not only our business, but also our commitment to society. When facing challenges, we always remember our original intention, strive to improve the quality of work, because we deeply understand that this concerns the life and health of everyone.


Although we may not be the best software company in the industry, and may not achieve perfection in documentation and design, but we believe that it is this dedication to the mission and the commitment to social responsibility that makes us the most dedicated team in this field. We will continue to work hard, pursue excellence, and strive tirelessly to create a safer and healthier future.

Conception d'architecture distribuée avec des centres de données répartis sur plusieurs continents

customer service