Problemas de procesamiento de datos de Redis
En mi impresión, no existe ningún tipo de datos de cola (Queue) entre los muchos tipos de datos de Redis. Los tipos de datos de Redis incluyen: Cadena, Hash, Lista, Conjunto, conjunto ordenado (Conjunto ordenado).
Si solo desea generar el número de pedido (OrderSn), puede generar el número Sn con anticipación y ponerlo en cola y luego almacenarlo en la caché de Redis.
Por ejemplo: /?pseudocode
Queuelt; stringgt;?snQueue?=?null;?//?OrderSn Queue
string?sn?=? Redis.Get("OrderSn");
string?curSn?=?string.Empty;
if(String.IsNullOrWhiteSpace(sn)){
snQueue?=?new?Queuelt;stringgt;();
for?//?Supongamos Doble 11, 30.000 pedidos por segundo
{
/? Asigne el número sn del pedido a la cola por adelantado
snQueue.Enqueue(DateTime.Now.ToString("yyyyMMdd")? ?i);
}
curSn?=?snQueue.Dequeue();?//?Salir de la cola
Redis.Set("OrderSn",?JsonConvert.SerializeObject(snQueue));
}
else
{ snQueue=JsonConvert.DeserializeObject?DeserializeObjectlt; Queuelt; stringgt; (sn);=?snQueue.Dequeue();?//?Salir de QueueRedis .Set("OrderSn",?JsonConvert.SerializeObject(snQueue)); //Reinsertar en la caché de Redis
}?