BookSleeve 1.3.41

Fully asynchronous Redis client, capable of pipelined operations; this acts as a multiplexer, allowing high-performance parallel usage of a single connection (or few connections) without being blocked on each separate request. All core redis opeations are supported. This library can also be used from C# 5.0/async very effectively.

Suggested Alternatives

StackExchange.Redis

Install-Package BookSleeve -Version 1.3.41
dotnet add package BookSleeve --version 1.3.41
<PackageReference Include="BookSleeve" Version="1.3.41" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add BookSleeve --version 1.3.41
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

IMPORTANT: BookSleeve is now succeeded by StackExchange.Redis, which takes the same concept and performance aims, but offers much better support for multiple nodes, availability, etc; sadly, there was no way to reconcile this with the API.

* 1.3.41  - Add: SCAN support (2.8+)
     * 1.3.40  - Add: slowlog support; save/bgsave/lastsave support
     * 1.3.39  - Add: ExtendLock / ReleaseLock (now has overload that checks value)
     * 1.3.38  - Add: DEBUG OBJECT... yess, I know this is not recommended for general usage
     * 1.3.37  - Fix: Client name not being sent on recent redis-server versions (due to "info" detection)
     * 1.3.36  - Fix: (critical) TakeLock not passing db correctly
     * 1.3.35  - Fix: bug when validating multiple exists/not-exists conditions in a transaction
     * 1.3.34  - Fix: raise shutdown/closure events in more scenarios
     * 1.3.33  - Fix: And... back to the newer async API (and fix error in keep-alive counter)
     * 1.3.32  - Add: show connection state and other info in counters
     * 1.3.31  - Fix: ensure transaction abort due to precondition-fail always cancels the unsent messages; use appropriate threads for their callbacks
     * 1.3.30  - Fix: use ConnectAsync rather than a task with sync Connect
     * 1.3.29  - Fix: better SocketError tracking with older async read API
     * 1.3.28  - Add: Make last command time available to the caller; use the older async read API
     * 1.3.27  - Add: GetCounters tracks the number of in-progress callbacks (sync and async)
     * 1.3.26  - Fix: Tidying up shutdown
     * 1.3.25  - Fix: Async-receive could misreport blame
     * 1.3.24  - Add: Much better tracking of who to blame for shutdown events; this is available on the connection and used in error messages
     * 1.3.23  - Add: Expose an explicit Shutdown event
     * 1.3.22  - Add: Make CompletionMode configurable (globally and per-connection)
     * 1.3.21  - Add: SuspendFlush/ResumeFlush
     * 1.3.20  - Add: support for DUMP/RESTORE
     * 1.3.19  - Add: support for batches; like transactions, but no guarantee of atomicity
     * 1.3.18  - Fix: close during "shutdown" was losing fault information
     * 1.3.17  - Fix: annoying null-ref is annoying
     * 1.3.16  - Fix: cleanup a few more unobserved exceptions
     * 1.3.15  - Fix: ensure all exceptions are "observed"
     * 1.3.14  - Fix: treat unsendable messages as cancelled
     * 1.3.13  - Fix: multi-channel subscribe was failing
     *         - Add: support for single-command locking w/ 2.6.12 or above
     * 1.3.12  - Fix: 1.3.11 was deploy fail :(
     * 1.3.11  - Fix: Environment.Ticks (from 1.3.7) simplified
     *           Add: Optionally inline callbacks when possible to reduce Task overhead
     * 1.3.10  - Fix: subscription connections may need to defer pending queue until after INFO, to
     *           ensure CLIENT SETNAME works; QUIT should not error during Dispose();
     * 1.3.9   - Add: "redis-command" to errors
     * 1.3.8   - Fix: possible null-ref during timeouts
     * 1.3.7   - Fix slow ConnectionUtils.Connect performance w/ 'down' servers
     *         - Avoid Environment.Ticks due to wrap-around
     * 1.3.6   - Adds TIME support
     *         - Pub/sub now returns Task to allow tracking of subscription
     *
     * 1.3.*- MAJOR CHANGES; 1.3 removes the threaded core to allow for more scalability over multiple connections;
     *           This is an API-breaking change (especially around pub/sub), and local validation is recommended
     *
     * 1.2.0.8 - Fix processing of info=>redis_version to work with MS alpha redis
     * 1.2.0.7 - Client names now fully supported on 2.6.9+
     * 1.2.0.6 - Support client names on connections (in theory; API changes only)
     * 1.2.0.5 - Bug-fixes: large integer parsing
     * 1.2.0.4 - ConnectionUtils now supports sentinel
     * 1.2.0.3 - show current tie-breaker key in ConnectionUtils
     * 1.2.0.2 - added additional ConnectionUtils overloads to control master/slave behavior more granularly
     * 1.2.0.1 - adds SORT support (under Keys)
     * 1.2.0.0 - BREAKING CHANGE: SortedSets.{Rank|Score} now return nullable values
     *         - adds bindings for redis 2.6 commands
     *         - now strong-named
     *         - cumulative bug-fixes

Dependencies

This package has no dependencies.

NuGet packages (14)

Showing the top 5 NuGet packages that depend on BookSleeve:

Package Downloads
Roque
Roque is a queueing framework. Allows you to create Redis-based distributed async event and work queues by just using plain-old C# methods and events.
CommonWebInfrastructure
The implementations of Common Web Infrastructure. See README on github.
Roque.Worker
This package is for class libraries that implement worker services or subscribers. Roque is a queueing framework. Allows you to create Redis-based distributed async event and work queues by just using plain-old C# methods and events.
WACEL
WACEL provides implementation of high-level data structures that can be shared among your services and application. You can use WACEL data structures just as if you were using local data structures such as arrays, tables, circular buffers and OLAP cubes, and these data structures are backed by Windows Azure Cache, Windows Azure Table Storage, or both, depends on your needs of performance and persistence.
AspNetRedisProviders
The Redis Providers library is a collection of ASP.NET providers that uses redis as the database to store provider information.

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on BookSleeve:

Repository Stars
Azure-Readiness/DevCamp
Azure-Readiness/MicrosoftAzureTrainingKit
This is the archive of the Microsoft Azure Training Kit

Version History

Version Downloads Last updated
1.3.41 188,627 11/28/2013
1.3.40 3,721 11/19/2013
1.3.39 18,043 9/20/2013
1.3.38 21,169 6/27/2013
1.3.37 16,268 5/11/2013
1.3.36 1,246 5/7/2013
1.3.35 1,925 4/26/2013
1.3.34 3,765 4/22/2013
1.3.33 992 4/22/2013
1.3.32 956 4/22/2013
1.3.31 88,771 4/19/2013
1.3.30 1,761 4/18/2013
1.3.29 1,116 4/17/2013
1.3.28 928 4/17/2013
1.3.27 1,410 4/16/2013
1.3.26 1,034 4/15/2013
1.3.25 1,088 4/11/2013
1.3.24 1,108 4/11/2013
1.3.23 967 4/10/2013
1.3.22 1,108 4/10/2013
1.3.21 986 4/9/2013
1.3.20 991 4/8/2013
1.3.19 988 4/5/2013
1.3.18 1,145 4/5/2013
1.3.17 1,019 4/4/2013
1.3.16 1,109 4/4/2013
1.3.15 1,101 4/3/2013
1.3.14 1,102 4/3/2013
1.3.13 932 4/3/2013
1.3.12 2,098 3/27/2013
1.3.11 941 3/27/2013
1.3.10 1,095 3/25/2013
1.3.9 966 3/23/2013
1.3.8 1,157 3/23/2013
1.2.0.8 15,108 1/29/2013
1.2.0.7 3,272 1/17/2013
1.2.0.6 1,052 1/11/2013
1.2.0.5 4,503 12/3/2012
1.2.0.4 1,036 12/1/2012
1.2.0.3 1,280 11/21/2012
1.2.0.2 6,948 10/24/2012
1.2.0.1 1,859 10/18/2012
1.2.0 1,321 10/17/2012
1.1.0.12 5,746 10/17/2012
1.1.0.11 1,240 10/15/2012
1.1.0.10 1,238 10/12/2012
1.1.0.9 1,075 10/9/2012
1.1.0.8 7,192 8/2/2012
1.1.0.7 8,897 4/12/2012
1.1.0.6 1,788 3/27/2012
1.1.0.5 1,847 1/10/2012