Come si può garantire identificatori univoci, anche in caso di compressione del sistema e ripristino dal backup

1

Nella produzione di un dispositivo ognuno deve ottenere un identificatore univoco. Fin qui tutto bene, si può avere un file contenente l'ultimo ID utilizzato su un'unità condivisa o un servizio di rete che gestisce e assegna gli ID in modo che il caricamento dell'ID nel dispositivo non sia limitato a una singola workstation.

Tuttavia, in caso di arresto totale del sistema e ripristino dal backup, è possibile avere alcuni dispositivi con lo stesso ID, se alcuni dispositivi sono stati prodotti dopo il backup. Si potrebbe fare in modo che ciascuna workstation salvi l'ID utilizzato più grande e verificare se non è più grande di quello che ha ottenuto dalla rete, ma potrebbe succedere che la workstation con l'ultimo dispositivo prodotto non sia accesa dopo l'arresto. Uno potrebbe richiedere ai lavoratori di annotare l'ultimo ID utilizzato dopo i loro turni, ma non sembra neanche a prova di infallibilità.

Esiste una best practice oltre ad avere più servizi per la gestione degli ID, con almeno uno di essi fuori sede?

Gli ID sono abbastanza grandi (32 bit) rispetto al numero di dispositivi da produrre per consentire lacune piccole, ma non abbastanza grandi per seguire il vero modo RNG. In questo modo, si può aumentare l'ID più grande di un numero significativamente più grande della quantità prodotta al giorno, ma come si può mantenere questa "pratica aziendale" applicata per forse decenni?

    
posta vsz 04.04.2014 - 12:38
fonte

1 risposta

2

Dividi i tuoi 32 bit. In condizioni normali, contate normalmente usando tutti i 32 bit. Quando si verifica un arresto anomalo, si utilizzano solo i più significativi, ad esempio, 8 bit del backup, incrementando quella parte per due e partendo da lì. Tutto ciò di cui hai bisogno per assicurarti ora è il backup abbastanza spesso. Più in particolare, abbastanza spesso per garantire che non si sia utilizzata l'intera parte più significativa (24 bit in questo esempio) tra i backup.

    
risposta data 04.04.2014 - 14:27
fonte

Leggi altre domande sui tag