2.2. Data Grid 8.1.0 中的新功能
Data Grid 8.1.0 提高了可用性、提高性能并提高安全性。了解 8.1.0 中的新功能。
2.2.1. 跨站点复制 复制链接链接已复制到粘贴板!
Red Hat OpenShift 的全面支持
Data Grid Operator 现在完全支持数据网格跨站点复制。在 OpenShift 上创建全局 Data Grid 集群,该集群在数据中心中备份。
异步备份的冲突解析
在使用跨站点复制功能时,Data Grid 8.1 显著提高异步备份。此发行版本引入了冲突的条目和解析机制的检测,以便在多个活跃站点间复制多个活跃站点时保证数据一致性。
了解 Data Grid 如何检测并解决文档中的冲突信息。
请参阅 Concurrent Writes 和 Conflicting Entries。
多个站点 Master
Data Grid 使用 JGroups RELAY2 协议来促进跨站点复制的集群间通信。每个集群都有一个站点 master,用于处理站点之间的流量。
Data Grid Operator 控制在 OpenShift 上使用跨站点复制时,哪些节点成为站点 master。您不能使用 Data Grid Operator 修改 RELAY2 配置。
从 8.1 开始,您可以在 RELAY2 配置中设置多个站点 master,以平衡集群间通信。使用 max_site_masters 属性,如下例所示:
<relay.RELAY2 site="NYC"
max_site_masters="100"/>
<relay.RELAY2 site="NYC"
max_site_masters="100"/>
请参阅 设置跨站点复制。
2.2.2. Data Grid Server 复制链接链接已复制到粘贴板!
Data Grid Server 8.1 提供了增强的安全性和新的配置选项。
自动身份验证
Data Grid Server 使用了一个默认属性域,它会自动在远程端点上强制实施用户身份验证。
请参阅 添加数据网格凭证,以创建用于访问 Data Grid 控制台、命令行界面(CLI)、REST API 或 Hot Rod 端点的用户名和密码。
请参阅安全访问数据网格服务器 以了解配置不同的身份验证机制。
如果安装了 Data Grid Server 8.0,升级到 8.1 并使用具有默认安全性的配置模式。
JDBC 缓存存储的共享数据源
Data Grid Server 可让您在使用 JDBC 缓存存储将缓存条目持久到数据库时创建共享数据源。
缓存授权的全局角色
如果您使用基于角色的访问控制配置缓存授权,则应用全局配置中声明的角色,除非在缓存中明确声明角色。
2.2.3. Data Grid 命令行界面(CLI) 复制链接链接已复制到粘贴板!
Data Grid 8.1 CLI 为服务器配置、用户管理和故障排除提供了额外的功能。
用户管理
从 8.1 开始,CLI 提供了一个 user 命令,它取代了 Data Grid Server 发行版中包含的 user-tool 脚本。
user 命令允许您管理基于属性的安全域的用户凭证和组。例如,以下命令添加了具有 "admin" 权限的凭证:
[disconnected]> user create myusername --password=qwer1234! --groups=admin
[disconnected]> user create myusername --password=qwer1234! --groups=admin
请参阅 Adding Data Grid Credentials。
日志记录配置
现在,您可以在运行时修改服务器日志配置。例如,要为 org.infinispan 类别启用 DEBUG 日志消息:
[hostname@cluster//containers/default]> logging set --level=DEBUG org.infinispan
[hostname@cluster//containers/default]> logging set --level=DEBUG org.infinispan
诊断报告
Data Grid Server 提供了一个聚合日志,其中包含可用于监控和排除部署的信息,如线程转储、内存配置和打开套接字等。
使用带有 CLI 的 report 命令,如下例所示:
[hostname@cluster//containers/default]> server report Downloaded report 'infinispan-hostname-timestamp-report.tar.gz'
[hostname@cluster//containers/default]> server report
Downloaded report 'infinispan-hostname-timestamp-report.tar.gz'
请参阅 获取数据网格服务器的诊断报告。
Data Grid Server 的诊断报告目前仅适用于 Linux/ Unix 系统。
2.2.4. Data Grid 控制台 复制链接链接已复制到粘贴板!
Data Grid 8.1 控制台提供额外的功能,例如:
- 创建和删除缓存条目。
- 跨站点复制管理。
- 架构管理.
- 使用 Ickle 查询搜索数据容器。
- 与 Red Hat SSO 集成,以便访问数据网格控制台通过 realm 登录页面获取凭证。
有关访问数据网格控制台并创建缓存的详情,请参考使用 Data Grid 控制台创建缓存。
2.2.5. REST API 复制链接链接已复制到粘贴板!
POST 方法现在支持使用 ?action URL 参数调用 Data Grid REST API。如果响应包含内容或状态 204,则调用返回状态 200。
计划删除对使用 GET 方法的 ?action URL 参数的支持。
2.2.6. 热 Rod Java 客户端 复制链接链接已复制到粘贴板!
通过 URI 配置
热 Rod Java 客户端配置现在支持以下格式的 URI:
hotrod[s]://[user[:password]@]host[:port][,host2[:port]][?property=value[&property2=value2]]
hotrod[s]://[user[:password]@]host[:port][,host2[:port]][?property=value[&property2=value2]]
这为配置 Hot Rod Java 客户端连接提供了更紧凑的方式。请参阅 Hot Rod Client 配置。
使用自动缓存创建的每个缓存配置
当 Hot Rod Java 客户端尝试访问不存在的缓存时,它们会返回 getCache ("<cache_name>")调用的 null。您可以更改此默认行为,以便客户端使用 XML 格式的缓存配置模板或 Data Grid 缓存定义在首次访问时自动创建缓存。
请参阅 在首次 访问时创建缓存。
2.2.7. Data Grid Queries 复制链接链接已复制到粘贴板!
数据网格索引和查询功能具有降低配置开销的改变,并在搜索数据存储时提供更好的性能。
主要变更包括:
- Data Grid Lucene Directory 已弃用。
-
弃用
org.infinispan.query.SearchManager接口。
Data Grid 不再支持 Apache Lucene 和 Hibernate Search 的原生对象。使用 org.infinispan.query.Search 类作为基于字符串搜索的入口点,并带有 Ickle 查询语言。
您应该计划迁移已弃用的搜索功能的任何用法,包括基于 Lucene 的查询,并开始使用 org.infinispan.query.Search 类作为使用 Ickle 查询语言执行搜索的入口点。
请参见以下信息:
2.2.8. 简化的配置 复制链接链接已复制到粘贴板!
Data Grid 8.1 弃用了几个配置属性,以简化用户选项并改进声明性和程序化设置之间的一致性。
内存 配置是 Data Grid 8.1 中最显著的变化。它可让您将数据容器配置为:
- 将条目存储在 JVM 堆或非堆内存中。
- 控制数据容器的大小。您可以设置缓存可以保存的最大条目数,或者设置缓存可以使用的最大内存量。
与之前的版本一样,内存 配置也可以配置 Data Grid 以二进制格式存储条目。但是,从 8.1 开始,二进制存储配置已弃用。相反,您应该为缓存定义编码。如果要使用二进制存储,请在缓存定义中为任何二进制格式指定 MediaType。
2.2.9. Non-Blocking I/0 复制链接链接已复制到粘贴板!
Data Grid 将线程池整合为两个:
- 非阻塞线程池
- 阻塞线程池
从这个版本开始,几乎所有的 Data Grid 内部组件都使用非阻塞线程池,这可以提高吞吐量,缩短延迟,并改进了大型 I/O 工作负载的整体响应。
任何阻塞 I/O 路径,现在使用阻塞线程池以避免包含非阻塞调用。
NonBlockingStore SPI
Data Grid 8.1 引入了用于实施持久性缓存存储的 NonBlockingStore 接口。名称意味着 NonBlockingStore SPI 公开必须阻止调用线程的方法。
为了处理阻塞操作,Data Grid 提供了一个 BlockingManager 工具类。
请参见以下信息:
2.2.10. Red Hat JBoss EAP 模块 复制链接链接已复制到粘贴板!
Red Hat JBoss EAP 的 Data Grid Modules for Red Hat JBoss EAP 提供了一个临时解决方案,直到 Red Hat JBoss EAP 能够直接管理 infinispan 子系统。