Ho un problema che sto cercando di risolvere, che sembra un problema comune e quindi probabilmente ha una soluzione comune sotto forma di un protocollo di rete. La mia conoscenza dei protocolli di rete è piuttosto limitata e non riesco a trovare un protocollo esistente per risolvere questo problema utilizzando la ricerca di Google se l'utilizzo di un protocollo diverso è la soluzione di cui ho effettivamente bisogno.
La mia configurazione
Usando MQTT, ho un solo produttore che pubblica messaggi su un argomento e potenzialmente diversi consumatori che si iscrivono a quell'argomento. Il produttore può produrre messaggi a una determinata velocità massima. Ogni consumatore desidera elaborare i messaggi a una velocità unica per quel singolo consumatore. Se un consumatore riceve messaggi a una velocità superiore a quella che può elaborare, può semplicemente eliminare i messaggi.
La mia preoccupazione
Ad esempio, potrei avere un produttore in grado di trasmettere immagini a dire 100 immagini al secondo, ma i miei 2 consumatori possono consumarle solo a una velocità di 8 al secondo e 5 al secondo rispettivamente. Per conservare le risorse di rete, il tasso ottimale di pubblicazione qui sarebbe di 8 immagini al secondo.
Il mio pensiero
Un modo per farlo funzionare è far sì che produttori e consumatori si colleghino a un servizio comune di "negoziazione dei tassi" il cui scopo sarebbe quello di modificare la velocità con cui l'editore sta emettendo messaggi sull'argomento condiviso.
Domanda
Dovrei considerare di utilizzare un altro protocollo per questo scopo o ci sarebbe qualcos'altro che dovrei considerare per aiutarmi a risolvere questo problema e risolvere il mio problema?