如今,公司的现实要求不同技术之间更加集成、协同工作、更改和处理数据。在这个生态系统中,集成平台的使用至关重要。但是,使用内存中数据库对于显著提高信息处理性能是必要的。在本文中,我们将演示 JBoss Fuse 集成平台的使用,以及名为红帽数据网格的内存中数据库。
JBoss Fuse是基于框架阿帕奇骆驼的集成平台。它侧重于许多应用程序、服务和设备之间的中介、转换和数据路由。
红帽数据网格(Datagrid)是一个内存中数据管理系统,它使用基于开源产品Infinispan的关键价值概念。红帽数据网格可用作简单的缓存解决方案、NoSql 数据库,甚至事件代理。我们可以假设红帽数据网格是企业版本,英菲尼潘是产品的社区版本。本文介绍 JBoss Fuse 如何用作与红帽数据网格通信的中间件解决方案,即此服务器配置为远程缓存服务器。
在 JBoss Fuse 版本 6.3 和 7.1 的文档中,我们可以找到对称为骆驼-jbossdatagrid 的组件的引用,该组件不再受红帽支持,并且已在最新版本中被组件 Camel-finispan 替换。
xxxxxxx
[ <组 Id>org.apache.camel</组 Id>3<工件Id>骆驼-非菲尼潘<artifactId>
4[lt;版本>$@camel.version]</版本>
5</依赖项 >
为了演示 JBoss Fuse 和红帽数据网格之间的集成,我们创建了一个快速入门项目,在本文中,我们详细介绍了如何完成此集成。该项目的源代码可在https://git.io/Je1J2下载。
对于这个项目,我们使用JBoss Fuse独立版7.4,使用阿帕奇骆驼2.21和红帽数据网格7.4,相当于英尼尼潘版本9.4。
除独立模式外,JBoss 保险丝可以在 EAP、KARAF 和开档中执行。此处应用的所有概念都与任何使用模式兼容此对象负责存储用于访问远程服务器的配置并管理与其的通信。
在下面的示例中,我们可以可视化示例项目中配置的"RemoteCacheManager"的实现。基本上,它是一个 java 类,使用类"配置生成器"来存储我们的红帽数据网格的配置。
Java
xxxxxxx
1221公共类远程缓存配置|3
4私有字符串rhdgHosts="127.0.0.1:11222";
5专用整数套接字超时=5000
6私有整数整数时间超时=5000
7私有整数最大值 Retries=10;
810公共远程缓存管理器缓存容器() |
11
12配置生成器生成器= 新的配置生成器();
13建设者。添加服务器(rhghosts);
14建设者。套接字超时(套接字超时);
15建设者。连接超时(连接超时);
16最大重试(最大重试);17建设者。连接池()。薄荷(10);
18建设者。连接池()。最大懒惰(50);
19
20返回新的远程缓存管理器(生成器.生成
21}
22}
此连接的基本方法是:
例如:192.168.0.4:11222;192.168.0.5:11222。
套接字超时
此属性定义最大套接字读取超时(以毫秒为单位),然后放弃等待服务器的字节。默认值为 60000(1 分钟)
连接超时
此属性定义在放弃连接到服务器之前的最大套接字连接超时。
最大重试 设置每个请求的最大重试次数。有效值应大于或等于 0(零)。零表示在网络故障时不会重试。它默认为 10。 使用此配置,组件 Camel-finispan 可以连接,并使用热棒协议在红帽数据网格中插入、读取和删除密钥等操作。
此协议用于比基于文本的其他协议更快地加快客户端访问和服务器交互,还允许客户端为负载平衡、故障转移和数据查询做出更明智的决策。
在继续之前,了解英尼尼潘终结点 (Datagrid) 的语法非常重要。 要创建生产者和使用者,组件使用以下语法:
Java
xxxxxxx
1