¿A qué debemos prestar atención en la cola de mensajes de Redis FIFO?
1) Implementación de lista única: el funcionamiento normal de la cola se deja dentro y fuera (lpush, rpop). ), para que la prioridad alta se pueda procesar primero. Cuando encuentre una tarea de alto nivel, puede insertarla directamente en la cola e ingresar directamente al encabezado de la cola (rpush). De esta manera, las tareas obtenidas y recuperadas del encabezado. de la cola (a la derecha) son tareas de alta prioridad (rpop)
2) Utilice dos colas, una para colas ordinarias y otra para colas avanzadas, para colocar las tareas de este nivel en diferentes colas. Las tareas también son muy simples. Se puede presionar el comando BRPOP de redis para tomar valores de múltiples colas secuencialmente, BRPOP buscará en el orden de claves dado y mostrará un elemento al final de la primera cola no vacía, redisgt; list1 list2 0
list1 como cola de tareas de alta prioridad, list2 se usa como una cola de tareas ordinaria
Este método implementa primero tareas de alta prioridad y cuando no hay tareas de alta prioridad , obtenga tareas ordinarias
El método 1 es el más efectivo. Simple, pero está limitado por este método en aplicaciones prácticas. El método de implementación de prioridad es relativamente complicado, pero su implementación no conduce al mantenimiento de la complejidad. El método de implementación 2 es el método recomendado y es el más adecuado para aplicaciones prácticas
Se prefieren los métodos de implementación complejos, pero la implementación no conduce a un mantenimiento complejo.
El método 1 es el más simple. , pero tiene mayores limitaciones.