Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5096304
  • 博文数量: 921
  • 博客积分: 16037
  • 博客等级: 上将
  • 技术积分: 8469
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-05 02:08
文章分类

全部博文(921)

文章存档

2020年(1)

2019年(3)

2018年(3)

2017年(6)

2016年(47)

2015年(72)

2014年(25)

2013年(72)

2012年(125)

2011年(182)

2010年(42)

2009年(14)

2008年(85)

2007年(89)

2006年(155)

分类: Erlang

2016-04-15 10:06:01

一 Riak Erlang Client接口(Protocol Buffer)
 
  github地址:
 
下面来看看它的使用

1.与Riak建立连接

  1. {ok,Pid}=riakc_pb_socket:start_link("127.0.0.1", 8087)
2.update与insert操作
  1. Object = riakc_obj:new(Bucket, Key, Value),
  2.   ok = riakc_pb_socket:put(Pid, Object)
(Bucket、Key和Value都是二进制格式)
3.delete操作

  1. riakc_pb_socket:delete(Pid, Bucket, Key)
(Bucket和Key都是二进制格式)
 4.get操作

  1. {ok, Object} = riakc_pb_socket:get(Pid, Bucket, Key),
  2.   riakc_obj:get_value(Object)
(Bucket和Key都是二进制格式)

想了解更多的方法看看src下面的riakc_pb_socket.erl和riakc_obj.erl

其实这个Client Library的结构很简单,首先定义了riakclient.proto文件,然后riakc_pb.erl使用protobuffs进行encode发送给Riak处理

二 Riak Erlang Http Client(Http方式)
github地址:
1. 设置连接信息

  1. C = rhc:create("127.0.0.1", 8098, "riak", [])
2.update与insert操作

  1. Object = riakc_obj:new(Bucket, Key, Value),
  2.   rhc:put(C, Object, <<"text/plain">>)
 3.delete操作

  1. rhc:delete(C, Bucket, Key)
4.get操作

  1. {ok, Object} = rhc:get(C, Bucket, Key),
  2.    riakc_obj:get_value(Object)
Http Client用ibrowse把对Riak的http请求都封装好,学习erlang的可以看看它的代码风格

原始出处

阅读(1481) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~