Orientamento per il lato client

0

Abbiamo creato un software per dispositivi Rugged e mobili e viene implementato sul dispositivo. L'amministratore ha la possibilità di inviare un aggiornamento a tali dispositivi.

Usiamo GCM o WNS per inviare una notifica ai dispositivi che ha un aggiornamento.

Problema:

Se tutti i dispositivi richiedono un aggiornamento allo stesso tempo, avremo un burst di carico nel server.

design

corrente Ora memorizziamo la richiesta nel server 100 all'ora e la inviamo ai dispositivi mobili. Il processo di aggiornamento richiede lunghe ore per terminare.

Il mio design Invece, voglio inviare l'aggiornamento ad ogni dispositivo con una limitazione basata sul tempo al client. Raggrupperò da 200 a 300 dispositivi al minuto per chiedere un aggiornamento.

Sto cercando Orientamento per vedere se esiste un'opzione migliore anche per il feedback sull'opzione corrente.

    
posta satish 28.08.2018 - 04:02
fonte

1 risposta

1

Se il tuo vincolo è veramente solo la capacità del server, allora potresti prendere in considerazione le opzioni dell'infrastruttura cloud. Ciò sposterebbe i problemi di ridimensionamento dell'architettura nel cloud e ti consentirà di fare affidamento sull'elasticità dei fornitori di servizi cloud:

Esempi

AWS lambda per inviare i tuoi aggiornamenti. Un buon esempio sull'utilizzo di AWS come backend per lo sviluppo mobile può essere trovato qui: link

Funzioni di AZURE per inviare i tuoi aggiornamenti. Questo esempio probabilmente non è direttamente rilevante per te, ma ti dà un'idea della capacità: link Inoltre, dal momento che hai taggato IOT, Azure ha un IOT HUB che può fare molto, incluso l'aggiornamento del firmware del dispositivo: link

Ewan ha introdotto Content Delivery Networks (CDN) come opzione (vedi commento sotto) - e questa è una buona scelta. AWS ha Cloudfront , Google e Microsoft hanno anche opzioni CDN.

Infine - se l'integrazione di soluzioni MDM (Mobile Device Management) di terze parti è un'opzione - quindi prendere in considerazione l'automazione di qualcosa come le soluzioni AirWatch, Intune o Zoho MDM (consiglio di concentrarsi sulle versioni cloud che sfruttano l'elasticità del cloud). Ciò conferirebbe all'MDM la sfida dell'aggiornamento e hanno trascorso anni in questo spazio.

    
risposta data 28.08.2018 - 13:47
fonte

Leggi altre domande sui tag