Всъщност протоколът Redis всъщност не поддържа операции "изстреляйте и забравите". С изключение на pub/sub трафик, всички команди на Redis се съпоставят с отговор и няма начин да кажете на сървъра на Redis да пропусне отговора.
Сега някои клиенти (като StackExchange.Redis) симулират режим "запали и забрави" чрез асинхронно изпълнение на протокола. Всъщност режимът „запали и забрави“ в StackExchange.Redis е много подобен на „асинхронния“ режим, с изключение на това, че отговорите просто се изхвърлят, когато бъдат получени.
Надежден ли е? Е, той гарантира доставката, доколкото TCP/IP гарантира доставката. Мрежата ще се опита усилено да предаде пакетите (в крайна сметка пакетите ще бъдат предадени отново, ако някои от тях бъдат загубени), но всичко това се обработва от TCP.
Сега, ако сървърът не работи или реши да затвори връзката, клиентът ще разбере само когато се опита да чете от сокета. StackExchange.Redis може щастливо да продължи да изпраща команди на мъртва връзка за известно време. Ако имате средно ниво (като Twemproxy), ситуацията може да бъде още по-лоша.
С други думи, трафикът „изстрели и забрави“ обикновено ще бъде изпратен до сървъра и няма да се загуби съобщение в мрежата, но ако имате проблеми със сървъра или връзката, част от трафика може да бъде загубена, преди клиентът да има възможност да забележи. то. Бих нарекъл това поведение с най-добри усилия.