cpp_redis
is a C++11 Asynchronous Multi-Platform Lightweight Redis Client, with support for synchronous operations and pipelining.
Requirement
cpp_redis
has no dependency. Its only requirement is C++11
.
Example
cpp_redis::redis_client
:
cpp_redis::redis_client client;
client.connect();
client.set("hello", "42");
client.get("hello", [](cpp_redis::reply& reply) {
std::cout << reply << std::endl;
});
client.commit();
# or client.sync_commit(); for synchronous call
cpp_redis::redis_client
full documentation and detailed example.
More about cpp_redis::reply.
cpp_redis::redis_subscriber
:
cpp_redis::redis_subscriber sub;
sub.connect();
sub.subscribe("some_chan", [](const std::string& chan, const std::string& msg) {
std::cout << "MESSAGE " << chan << ": " << msg << std::endl;
});
sub.psubscribe("*", [](const std::string& chan, const std::string& msg) {
std::cout << "PMESSAGE " << chan << ": " << msg << std::endl;
});
sub.commit();
# or sub.sync_commit(); for synchronous call
cpp_redis::redis_subscriber
full documentation and detailed example.
Wiki
A Wiki is available and provides full documentation for the library as well as installation explanations.
License
cpp_redis
is under MIT License.
Contributing
Please refer to CONTRIBUTING.md.
Special Thanks
- Frank Pagliughi for adding support of futures to the library
- Mike Moening for his unexpected and incredible great work aiming to port cpp_redis on Windows!
- Tobias Gustafsson for contributing and reporting issues
- Alexis Vasseur for reporting me issues and spending time helping me debugging
- Pawel Lopko for reporting me issues