Red de conocimiento informático - Problemas con los teléfonos móviles - ¿A qué debemos prestar atención en la cola de mensajes de Redis FIFO?

¿A qué debemos prestar atención en la cola de mensajes de Redis FIFO?

Por lo general, se utiliza una lista única para implementar operaciones de cola. Esto tiene una pequeña limitación, por lo que las tareas son uniformemente las primeras en entrar, las primeras en salir. Si desea priorizar una determinada tarea, no será fácil de manejar. Para tener prioridad, podemos priorizar tareas de alto nivel y la implementación es la siguiente:

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.