请先参考安装部署并启动Riak集群(3个Node)。 Riak默认有两种端口,一种是protobuf端口,还有一种是HTTP Restful端口。 以前的Riak client java API会支持两种端口。最新的Riak client Java API作了很多改造,比如说利用netty4作为网络通信框架,简化了API代码,并且只支持Protobuf端口。理由如下:
我们之后主要使用riak client2.0.5和Riak的protobuf端口进行开发使用Riak客户端,在某些情况下,会穿插一些Restful端口使用。因为某些功能在riak client2.0.5还未实现或者实现的不完整:
建立maven项目,添加如下依赖:
之后新建ClusterRiakClient类:
将控制台(Console)日志级别设为debug,编写测试main:
运行,查看控制台输出
可以看出,Riak集群连接成功,并成功关闭连接。 如果日志级别为Debug,你可以看出,Riak客户端使用了Netty客户端连接的Riak集群 这里,Riakclient和RiakCluster还有实际的Riak集群之间的关系如下图所示:
Riak是一种键值的存储方式,所以必须提供键值对才能保存数据。为了防止键冲突,Riak运用了桶的概念,用户可以将键放入不同的桶中(相当于键的namespace)
首先,我们建立一个简单的POJO类,保存快递员的基本信息。
在ClusterRiakClient中添加如下方法:
Location通过Bucket和Key确定唯一位置。编写测试main
结果:
以上是比较简单的增加和查询的实现,还有异步实现的方式。
测试代码:
输出结果和之前同步的应该一样。 我们还可以删除某个键值对,同样的,有同步和异步两种实现:
测试:
更新比较特殊,我们放到之后的章节去说 取得一个bucket下的所有键:
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/java-jiao-cheng/6241.html