热 Rod C++ 客户端指南
Red Hat Data Grid 复制链接链接已复制到粘贴板!
Data Grid 是一个高性能分布式内存数据存储。
- 无架构数据结构
- 将不同对象存储为键值对的灵活性。
- 基于网格的数据存储
- 旨在在集群中分发和复制数据。
- 弹性扩展
- 动态调整节点数量,以便在不中断服务的情况下满足需求。
- 数据互操作性
- 从不同端点在网格中存储、检索和查询数据。
Data Grid 文档 复制链接链接已复制到粘贴板!
红帽客户门户网站中提供了 Data Grid 的文档。
Data Grid 下载 复制链接链接已复制到粘贴板!
访问红帽客户门户上的 Data Grid 软件下载。
您必须有一个红帽帐户才能访问和下载数据中心软件。
使开源包含更多 复制链接链接已复制到粘贴板!
红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 Chris Wright 提供的消息。
第 1 章 安装 Hot Rod C++ 客户端 复制链接链接已复制到粘贴板!
在您的主机系统上作为动态库安装 Hot Rod C++ 客户端。
1.1. C++ 编译器要求 复制链接链接已复制到粘贴板!
| 操作系统 | 所需的编译器 |
|---|---|
| Red Hat Enterprise Linux (RHEL) 7, 64-bit | C++ 11 编译器(GCC 4.8.1) |
| RHEL 8、64 位 | C++ 11 编译器(GCC 4.8.1) |
Data Grid 为 RHEL 提供 Hot Rod C++ 客户端的 RPM 分发。
流程
在 RHEL 上为 Hot Rod C++ 客户端启用存储库。
Expand RHEL 版本 软件仓库 RHEL 7
jb-datagrid-8.1-for-rhel-7-server-rpmsRHEL 8
jb-datagrid-8.1-for-rhel-8-x86_64-rpms安装 Hot Rod C++ 客户端。
yum install jdg-cpp-client
# yum install jdg-cpp-clientCopy to Clipboard Copied! Toggle word wrap Toggle overflow
第 2 章 编译 Protobuf Schema 复制链接链接已复制到粘贴板!
Data Grid 使用 ProtoStream API 将数据存储为 Protobuf 编码的条目。
protobuf 是一种语言中立的格式,允许客户端使用 Hot Rod 和 REST 端点在远程缓存中创建和检索条目。
2.1. 在 Red Hat Enterprise Linux (RHEL)上编译 Protobuf 模式 复制链接链接已复制到粘贴板!
将 Protobuf 模式 .proto 文件编译到 C++ 标头和源文件,以描述您的数据到 Data Grid。
先决条件
安装 Protobuf 库和
protobuf-devel软件包。yum install protobuf yum install protobuf-devel
# yum install protobuf # yum install protobuf-develCopy to Clipboard Copied! Toggle word wrap Toggle overflow
流程
设置
LD_LIBRARY_PATH环境变量(如果尚未设置)。export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/lib64
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/lib64Copy to Clipboard Copied! Toggle word wrap Toggle overflow 根据需要为 Hot Rod C++ 客户端编译 Protobuf 模式。
/bin/protoc --cpp_out dllexport_decl=HR_PROTO_EXPORT:/path/to/output/ $FILE
# /bin/protoc --cpp_out dllexport_decl=HR_PROTO_EXPORT:/path/to/output/ $FILECopy to Clipboard Copied! Toggle word wrap Toggle overflow HR_PROTO_EXPORT是一个宏,在编译 Protobuf 模式时,Hot Rod C++ 客户端会展开。- 如果您计划使用查询,请将您的 Protobuf 模式注册到 Data Grid。
第 3 章 配置 Hot Rod C++ 客户端 复制链接链接已复制到粘贴板!
热 Rod C++ 客户端通过 RemoteCache API 与远程 Data Grid 集群交互。
3.1. 配置和远程缓存管理器 API 复制链接链接已复制到粘贴板!
使用 ConfigurationBuilder API 配置 Hot Rod C++ 客户端连接和 RemoteCacheManager API,以获取和配置远程缓存。
配置构建器
跨站点复制
ConfigurationBuilder builder;
builder.addServer().host("127.0.0.1").port(11222);
// Configure a remote cluster and node when using cross-site replication.
builder.addCluster("NYC").addClusterNode("192.0.2.0", 11322);
ConfigurationBuilder builder;
builder.addServer().host("127.0.0.1").port(11222);
// Configure a remote cluster and node when using cross-site replication.
builder.addCluster("NYC").addClusterNode("192.0.2.0", 11322);
接近缓存
ConfigurationBuilder builder;
builder.addServer().host("127.0.0.1").port(11222);
// Enable near-caching for the client.
builder.nearCache().mode(NearCacheMode::INVALIDATED).maxEntries(4);
ConfigurationBuilder builder;
builder.addServer().host("127.0.0.1").port(11222);
// Enable near-caching for the client.
builder.nearCache().mode(NearCacheMode::INVALIDATED).maxEntries(4);