Distribuzione uniforme attraverso una catena di risorse

1

Sto lavorando su un algoritmo che indirizza le attività attraverso una catena di risorse distribuite basate su un hash (o un numero casuale).

Ad esempio, supponiamo di avere 10 gateway in un servizio che distribuisce attività a 1000 gestori attraverso 100 code. Ci si aspetta che 10.000 client connessi siano connessi ai gateway in qualsiasi momento (i numeri sono molto generici per mantenerli semplici).

Questo è

  • 10.000 clienti
  • 10 gateway (produttori)
  • 100 code
  • 1000 lavoratori / gestori (consumatori)

Il flusso di ogni attività è client- > gateway- > queue- > worker

Ogni client avrà il proprio hash / numero che viene utilizzato per instradare ogni attività dal client allo stesso worker ogni volta, con ogni attività che attraversa lo stesso gateway e fa la coda ogni volta. Tuttavia, l'algoritmo gestisce la distribuzione in modo uniforme, il che significa che ogni gateway, coda e lavoratore avranno un carico di lavoro uniforme.

La mia domanda è esattamente come si chiamerebbe? Esiste già una cosa del genere? Questo è iniziato come DHT, ma mi sono reso conto che i DHT non possono fare esattamente ciò di cui ho bisogno, quindi ho iniziato da zero.

    
posta JSON 05.02.2014 - 00:05
fonte

1 risposta

1

Each client will have it's own hash/number which is used to route each task from the client to the same worker each time, with each task going through the same gateway and queue each time. Yet the algorithm handles distribution evenly, meaning each gateway, queue, and worker will have an even workload.

Queste due caratteristiche non sono compatibili.

Considera il caso in cui il tuo sistema è nuovo e processa ogni cliente una volta. Ora ordina tutti i tuoi clienti in base al lavoratore che li ha elaborati e invia i client in questo ordine al tuo sistema: raggiungerai la congestione più alta possibile rispettando la prima condizione.

Se non vuoi abbandonare completamente il secondo requisito, probabilmente dovrai specializzare il problema e formulare un'ipotesi sulla distribuzione degli arrivi dei clienti.

    
risposta data 05.02.2014 - 14:51
fonte

Leggi altre domande sui tag