ToplingDB 使用入门
从 RocksDB 迁移到 ToplingDB,只需要修改 Open/Close 相关的代码,其它代码不用任何改动。
示例代码(省略错误处理,完整版在这里)
#include <topling/side_plugin_repo.h>
#include <rocksdb/db.h>
int main(int argc, char* argv[]) {
using namespace rocksdb;
SidePluginRepo repo;
repo.ImportAutoFile(argv[1]); // argv[1] is json/yaml conf file
DB* db = nullptr;
repo.OpenDB(&db);
repo.StartHttpServer();
if (strcasecmp(argv[2], "set") == ) {
db->Put(WriteOptions(), argv[3], argv[4]);
}
else if (strcasecmp(argv[2], "get") == ) {
std::string val;
db->Get(ReadOptions(), argv[3], &val);
fprintf(stdout, "%s\n", val.c_str());
}
fprintf(stderr, "now visit the web(defined in json/yaml conf file)\n");
fprintf(stderr, "press enter to exit\n");
getchar(); // wait for enter
repo.CloseAllDB();
return ;
}
相关文章