Configurazione del server e architettura del sistema

// Orologi intelligenti/localizzatori GPS/dispositivi RFID/IoT

Il sistema di monitoraggio elettronico Traxbean è una piattaforma di monitoraggio della sicurezza e della salute basata sull'architettura SaaS, progettata per fornire soluzioni di monitoraggio complete per gli oggetti di cura. La piattaforma si basa principalmente su orologi intelligenti, localizzatori GPS intelligenti, beacon Bluetooth e dispositivi IoT per monitorare le informazioni sulla posizione delle persone, i modelli comportamentali e gli indicatori di salute in tempo reale. Le nostre soluzioni includono:

Monitoraggio elettronico delle correzioni comunitarie: monitoraggio dei detenuti fuori dal carcere.

Monitoraggio del personale nei cantieri edili, nelle miniere e nei grandi locali.

Monitoraggio per anziani e popolazioni speciali.


Traxbean offre opzioni di servizio flessibili, consentendo ai clienti di utilizzare direttamente la nostra piattaforma per servire i propri clienti finali o scegliere di implementarla privatamente. Sia che si utilizzi il server cloud di Traxbean o l'implementazione privata, possiamo fornire servizi altamente personalizzati, inclusa la personalizzazione del logo del marchio del cliente, dell'interfaccia di accesso, della lingua nazionale e di funzioni e stili di interfaccia specifici. Inoltre, Traxbean non solo fornisce un'interfaccia di accesso Web, ma sviluppa anche applicazioni mobili e fornisce soluzioni di display LED a grande schermo per clienti con implementazioni private, ampiamente utilizzate nei call center.


Il sistema Traxbean adotta un concetto di progettazione distribuita avanzata, ha una forte flessibilità e scalabilità, supporta milioni di connessioni simultanee e può servire migliaia di aziende contemporaneamente, rendendolo la scelta ideale per piattaforme di monitoraggio elettronico su larga scala. In uno scenario di distribuzione privata, tutti i componenti e i database possono essere installati centralmente su un singolo server, riducendo così i costi di utilizzo e la complessità di manutenzione.


Inoltre, Traxbean può anche fornire API RESTful per piattaforme di terze parti o applicazioni mobili, semplificando il processo di integrazione dei sistemi dei clienti e facilitando la connessione continua con altri sistemi.

Piattaforma di posizionamento intelligente del personale Traxbean

In base ai requisiti di trasporto di diversi orologi intelligenti e dispositivi IoT, il sistema di monitoraggio elettronico Traxbean può essere distribuito su un singolo server quando il numero di dispositivi è ridotto e il numero di utenti non è elevato. L’architettura del sistema è costituita principalmente da tre moduli principali:

1. Gateway: responsabile della comunicazione con orologi intelligenti e dispositivi IoT per garantire la trasmissione dei dati in tempo reale.

2. API: essendo il livello principale del database e della logica aziendale, tutte le interazioni del servizio vengono condotte tramite questo modulo.

3. Applicazione: fornisce un'interfaccia di gestione e processi aziendali per facilitare il funzionamento e il monitoraggio degli utenti.


L'intero sistema è sviluppato sulla base di Node.js e utilizza TypeScript come linguaggio di sviluppo. Il database aziendale utilizza MySQL e viene introdotto Redis per la gestione delle code e della cache per ottimizzare le prestazioni. Inoltre, MongoDB viene utilizzato per archiviare dati relativi al dispositivo, inclusi dati sulla posizione, dati sullo stato, dati sanitari, dati sugli allarmi, ecc. MongoDB è il database con la più alta frequenza di accesso ai dati e il più grande volume di query. La progettazione del sistema tiene conto delle esigenze di query efficienti e di archiviazione flessibile e sicura dei dati a lungo termine.

Metodo di distribuzione del server singolo del software della piattaforma

Il sistema di monitoraggio elettronico Traxbean è un software indipendente dalla piattaforma che può essere eseguito su server Linux e Windows. Prendendo come esempio 5.000 smartwatch (80% di tariffa online simultanea), la configurazione del server consigliata è la seguente:

Server Windows:

– CPU: 8 core ≥ 2,5 GHz, memoria: ≥ 32 GB, disco rigido SSD ≥ 500 GB, IOPS ≥ 5000, sistema operativo: Windows Server 2016 o successivo.

– Software: Node.js, PM2, Nginx, MySQL, MongoDB, Redis.


Server Linux:

– CPU: 8 core ≥ 2,5 GHz, memoria: ≥ 32 GB, disco rigido SSD ≥ 500 GB, IOPS ≥ 5000, sistema operativo: Ubuntu 20.04 o superiore o CentOS 8.0 o superiore.

– Software: Node.js, PM2, Nginx, MySQL, MongoDB, Redis.

Questa configurazione garantisce che il sistema funzioni in modo efficiente e soddisfi il requisito di conservazione dei dati storici per sei mesi.

Requisiti del server della piattaforma

Serviamo principalmente clienti professionali che hanno bisogno di gestire un gran numero di dispositivi online, come smartwatch e altri dispositivi IoT. A tal fine, i clienti solitamente implementano tre o più server per eseguire la piattaforma Traxbean per garantire un numero maggiore di connessioni simultanee tenendo conto del backup dei dati, del disaster recovery e del rapido ripristino in caso di errore.


Sebbene questa architettura sia troppo complessa per essere spiegata in dettaglio in un articolo, possiamo fornire un'idea generale di distribuzione. Consigliamo di distribuire il database, il gateway e l'applicazione su tre server diversi. La componente API è installata sul server dove si trova il database principale per migliorare l'efficienza di accesso ai dati e semplificare la manutenzione. Il server gateway installa sia MongoDB che Redis perché il gateway deve elaborare i servizi di coda e una grande quantità di dati upstream del dispositivo, il che può migliorare l'efficienza di elaborazione.


Questa configurazione dell'architettura a tre server è simile alla configurazione del server sopra menzionata e può gestire da 3 a 5 volte il numero di connessioni simultanee come un singolo server. Per maggiori dettagli, non esitate a consultare i nostri ingegneri.

Distribuzione distribuita di più architetture server

Quando è necessario gestire ordini di grandezza più elevati di più dispositivi online simultanei, un'architettura a server singolo o a tre server potrebbe non essere in grado di gestire in modo efficace l'enorme throughput di dati. Continuare a utilizzare questa architettura può provocare arresti anomali del sistema, maggiore latenza dei dati e rallentamenti significativi della velocità delle query. Pertanto, per risolvere questi problemi è necessario partire dal lato gateway.


Introdurremo un bilanciatore del carico per distribuire un enorme throughput di dati su più server per l'elaborazione. L'introduzione dei bilanciatori di carico ci consente di ridimensionare dinamicamente i server all'aumentare del numero di dispositivi online senza influire sul normale funzionamento del sistema. Questa capacità di espansione dinamica migliora la flessibilità e la scalabilità del sistema.


Per accelerare ulteriormente l’efficienza dell’elaborazione dei dati, MongoDB, che memorizza i dati del dispositivo, verrà distribuito sullo stesso server del gateway. MongoDB formerà un set di repliche con altre istanze MongoDB tramite Replica Set. Questa configurazione non solo migliora la ridondanza e la disponibilità dei dati, ma migliora anche notevolmente l'efficienza delle query dei dati a livello di applicazione, garantendo che il sistema possa comunque rispondere rapidamente in caso di carico elevato. Questo design architettonico combina il bilanciamento del carico e soluzioni efficienti di archiviazione dei dati per soddisfare le esigenze di gestione dei dispositivi su larga scala.

Bilanciamento del carico a livello gateway per supportare elevate capacità di elaborazione simultanea

Quando la piattaforma Traxbean affronta problemi più complessi, come servire clienti globali, gestire enormi dispositivi online e rispondere alle esigenze dei clienti di diversi paesi e regioni, questi requisiti non possono essere soddisfatti facendo affidamento solo su una serie di bilanciatori del carico. Per fare ciò, dobbiamo distribuire data center in ogni continente per garantire che ci siano server in ogni regione per ottenere un’elaborazione efficiente dei dati.


L'utilizzo di un data center locale per ricevere dati può migliorare significativamente la velocità di risposta e l'efficienza del trasferimento dei dati. Costruendo un'architettura di set di repliche attraverso la rete dorsale tra vari data center, possiamo ottenere la sincronizzazione dei dati in tempo reale. Questa architettura garantisce la tempestività dei dati globali ed evita la perdita di dati dovuta a ritardi della rete. Ad esempio, quando gli utenti di una filiale asiatica eseguono query su dati situati in Europa, l'architettura del set di repliche può ridurre efficacemente la latenza delle query e migliorare le prestazioni complessive del sistema.


Inoltre, l’adozione di questa architettura distribuita migliora anche la tolleranza agli errori e la scalabilità del sistema, supportando l’aggiunta dinamica di server per far fronte al crescente numero di dispositivi online e richieste degli utenti. La combinazione di connessioni a larghezza di banda elevata tra data center e la configurazione di bilanciatori di carico consente all'intero sistema di rispondere in modo flessibile alle esigenze delle diverse regioni e garantire l'efficienza e la stabilità dell'elaborazione dei dati. Il progetto complessivo dell'architettura è mostrato nella figura.

Progettazione di un'architettura distribuita globale multi-data center intercontinentale

In uno scenario in cui un gruppo gestisce un numero elevato di dispositivi online, gli utenti potrebbero essere distribuiti in regioni e fusi orari diversi ed eseguire query frequenti sui dati. Pertanto, oltre a garantire che il gateway che riceve i dati del dispositivo disponga di efficienti capacità di bilanciamento del carico, la nostra progettazione deve includere anche il bilanciamento del carico a livello di applicazione.


A livello applicativo, non solo abbiamo bisogno di bilanciatori del carico per distribuire in modo intelligente le richieste a diversi server, ma dobbiamo anche localizzare il più possibile l’elaborazione dei dati per ridurre la latenza. Per i dati interrogati di frequente, adotteremo un'architettura di separazione lettura-scrittura. Il database master è responsabile dell'elaborazione delle operazioni di scrittura, mentre il database slave si concentra sulle richieste di lettura. Questo metodo non solo garantisce la coerenza dei dati, ma migliora anche l'efficienza delle query attraverso la ridondanza dei dati, garantendo che il sistema possa comunque rispondere rapidamente in condizioni di concorrenza elevata.


Inoltre, considerando la necessità di archiviare un gran numero di file di immagini e video nel sistema, dobbiamo ottimizzare la strategia di gestione dei file. La sincronizzazione rapida dei file direttamente sui singoli server delle applicazioni dietro un sistema di bilanciamento del carico non è fattibile, quindi introdurremo una soluzione di storage di oggetti (come AWS S3 o servizi simili) in cui vengono archiviati e gestiti file di grandi dimensioni. Ciò non solo riduce il carico sul server delle applicazioni, ma migliora anche la velocità di accesso ai file attraverso la CDN (Content Delivery Network), garantendo che gli utenti possano scaricare e visualizzare rapidamente i contenuti multimediali in qualsiasi regione.


Per riassumere, la nostra progettazione non si concentra solo sull'elaborazione efficiente dei dati e sul bilanciamento del carico, ma considera anche in modo completo l'ottimizzazione della gestione e dell'archiviazione dei file per costruire un'architettura di sistema efficiente, flessibile e reattiva a livello globale.

Architettura integrata di bilanciamento del carico a livello applicativo e CDN

ThinkRace è una fabbrica di produzione di orologi intelligenti Sebbene non siamo una società di software tradizionale, dopo più di dieci anni di duro lavoro e tenacia, abbiamo partecipato a centinaia di progetti su larga scala, inclusi eventi importanti come i Giochi Olimpici Speciali Mondiali. I nostri partner sono in tutto il mondo e lavorano a stretto contatto con più di 20 operatori di telecomunicazioni, e i nostri prodotti e software sono stati ampiamente utilizzati in più di 50 paesi, inclusi i ministeri della salute e della giustizia di alcuni paesi.


Durante questo processo, abbiamo sempre creduto che la tutela della sicurezza e della salute dei lavoratori fosse la nostra missione e responsabilità. I nostri prodotti e software aiutano a gestire centinaia di cantieri, garantendo che la sicurezza di ogni lavoratore sia curata e protetta. Questa non è solo la nostra attività, ma anche il nostro impegno nei confronti della società. Di fronte alle sfide, restiamo sempre fedeli alle nostre aspirazioni originali e ci impegniamo a migliorare la qualità del nostro lavoro, perché sappiamo che è legato alla vita e alla salute di tutti.


Anche se potremmo non essere la migliore azienda di software del settore, né essere perfetti nella documentazione e nella progettazione, crediamo fermamente che sia questa perseveranza nella missione e l'impegno per la responsabilità sociale a renderci i migliori in questo campo . Continueremo a lavorare sodo, a perseguire l’eccellenza e a lavorare instancabilmente per creare un futuro più sicuro e più sano.

Progettazione di un'architettura distribuita globale multi-data center intercontinentale

customer service