Есть ли у кого-нибудь солидный шаблон, извлекающий Redis через библиотеку BookSleeve ?
Я имею в виду:
Автор BookSleeve @MarcGravell рекомендует не открывать и не закрывать соединение каждый раз, а поддерживать одно соединение во всем приложении. Но как вы можете справиться с перебоями в сети? т.е. соединение может быть успешно открыто в первую очередь, но когда какой-то код пытается прочитать / записать в Redis, есть вероятность, что соединение было разорвано, и вы должны снова открыть его (и изящно потерпеть неудачу, если оно не открывается - но это зависит от ваших потребностей дизайна.)
Я ищу фрагменты кода, которые охватывают общее открытие соединения Redis, и общую проверку «живым» (+ необязательный пробуждение, если не живым), который будет использоваться перед каждым чтением / записью.
Этот вопрос предлагает хорошее отношение к проблеме, но оно только частичное (например, оно не восстанавливает потерянное соединение), и принятый ответ на этот вопрос привлекает внимание правильный путь, но не демонстрирует конкретный код.
Надеюсь, эта ветка получит исчерпывающие ответы и в конечном итоге станет своего рода вики в отношении использования BookSleeve в приложениях .Net.
-----------------------------
ВАЖНОЕ ОБНОВЛЕНИЕ (21/3/2014):
-----------------------------
Марк Грэвелл (@MarcGravell) / Stack Exchange имеет недавно выпущенную StackExchange.Redis библиотеку, которая в конечном итоге заменяет Booksleeve. Эта новая библиотека, помимо прочего, внутренне обрабатывает переподключения и делает мой вопрос излишним (то есть, это не излишне ни для Booksleeve, ни для моего ответа ниже, но я думаю, что лучший способ продвинуться вперед - это начать использовать новую библиотеку StackExchange.Redis).