文档章节

【2016-04-19】thrift简单使用记录

rathan0
 rathan0
发布于 2016/04/19 11:58
字数 372
阅读 53
收藏 2
点赞 1
评论 0

由于公司合并,跨部门接口调用比较多,虽然之前在接触hadoop/hive的时候见过thrift,这还是第一次使用thrift。

异地的同事丢给我一个thrift接口,看到之后我是发蒙的,真不知道这个东西要怎么使用,于是开始求助搜索引擎。

要用java调用thrift接口,首先要用thrift命令生成java代码。

步骤:

1、下载thrift压缩包。官方网址:https://thrift.apache.org/

官网上没找到以往的版本,于是从filewatcher这里下载压缩包。

2、解压tar包

tar -xf thrift-0.9.1.tar

3、安装:

安装过程参考README,大概是configure,make,make install

4、生成java service代码:

thrift --gen java /Users/rathan/Downloads/asyncquerier.thrift

一个200行的thrift文件,可以生成25k行代码。统计行数命令如下:

find /Users/rathan/asyncquerier/ -type f -name "*.java" -exec cat {} \; | grep -v '^$' | wc -l

5、使用java代码:

把java代码放到项目里,然后引入对应的libthrift jar包(小心版本冲突),写出对应的client端代码,就可以使用了。

以上


虽然现在写出来很简单,但是自己琢磨还是花了点时间的,thrift技术是一方面,还是有相关接口的使用,好长一段时间都在盯着代码发呆,现在我也没弄懂那些自动生成的代码。


© 著作权归作者所有

共有 人打赏支持
rathan0
粉丝 4
博文 66
码字总数 36282
作品 0
程序员
MariaDB 5.5.49 发布,流行的 MySQL 分支版本

MariaDB 5.5.49 发布了,MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在...

淡漠悠然
2016/04/24
1K
6
Hive On Tez,Tez 和 MapReduce engine 性能对比

接上一篇文章: https://my.oschina.net/zhzhenqin/blog/781670 Tez On Yarn 安装成功后,是为了给 Hive 或者 Pig 提供执行引擎。 Hive 默认支持 MapReduce,Tez,Spark(在 SparkSQL 中支持...

震秦
2016/11/04
162
0
频繁添加删除osd,导致osd无法up

环境介绍 预上线系统,手工已经设置好crushmap,并且已经指定了osd.139所在的location 集群开启了noout(ceph osd set noout) ceph版本: 0.94.5 osd设置了osd crush update on start = false...

秦牧羊
2016/04/01
263
2
老男孩51CTO博客博文列表整理版20170620更新

老男孩51CTO博客博文列表整理版 (本文原自于一道考试题http://oldboy.blog.51cto.com/2561410/1860985) 老男孩教育运维脱产班35期 刘同学 2017-06-14 17:44:41 老男孩的MySQL私房菜新书视频1...

老男孩oldboy
2016/10/14
0
0
Percona-mysql MHA高可用实战方案

前言 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是一套优秀的作为MySQLy高可用环境下故障切...

jxzhfei
06/26
0
0
Baigo SSO v1.1.4 发布,单点登录系统

baigo SSO v1.1.4 发布了。 2016-04-26 优化安装 api 接口,修复部分 bug,便于实现自动部署 2016-02-20 新增站内短信功能 2016-02-10 新增用户注册发送激活邮件功能 新增忘记密码,通过发送...

baigoStudio
2016/04/26
3.2K
7
Thrift代理Hbase

使用HBase的2种方式: 1.直接使用HBase客户端API,这样就限制了只能使用java语言 2.使用一些能够将请求转换成API的代理,这些代理将原始Java API包装成其他协议,这样客户端可以使用API提供的...

ksfzhaohui
2016/09/22
666
0
Eriloan/webconsole

##欢迎大家踊跃报名,利用业余时间来拓展此项目,增加更多的功能服务大家。 ##常规部署 1、下载 go1.8.1.linux-amd64.tar.gz2、tar zxvf go1.8.1.linux-amd64.tar.gz -C /usr/local3、echo ...

Eriloan
2016/03/04
0
0
国内某公有云 linux云主机开机初始化过程分析和他的镜像制作过程

最近学习了国内某公有云的linux云主机启动之后,在镜像内部的初始化过程,分享出来,仅供参看。 一、开机过程 可以看到开机时候按照数字顺序执行了一连串的脚本,其中也提示的该公有云厂商的...

superbigsea
2016/10/12
0
0
客户端一直链接不上 日志显示这样 是怎么了

method:com.miracle9.soft.(SessionThread.java:115) needRemove:nulltrueClient:nullnotAttacak:false [84327][INFO ] 2016-08-14 04:37:59,053 method:com.miracle9.soft.(SessionThread.j......

伟哥哥2
2016/08/15
35
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

崛起于Springboot2.X之开发拦截器(21)

序言:几乎所有项目都需要拦截器,所以小伙伴们必须要掌握这门技术哦,不然只会mybaits增删改查那是实习生干的活呀。 1、创建拦截器类,implements HandlerInterceptor public class MyInce...

木九天
16分钟前
1
0
(转)SQL语句的执行顺序

(7) SELECT (8) DISTINCT <select_list> (1) FROM <left_table> (3) <join_type> JOIN <right_table> (2) ON <join_condition> (4) WHERE <where_condition> (5) GROUP BY <group_by_list> (......

Avner
25分钟前
0
0
1.14 救援模式

确保开机启动时连接镜像文件,如果是真机服务器,就需要:U盘或光盘镜像启动进入BIOS 不同主板进入bios按键不同,一般是F12或Esc 光标:移动到Boot(开机启动项) 减号移动:光标选中行,按-...

小丑鱼00
32分钟前
0
0
ES11-全文检索

高级别全文检索通常用于在全文本字段(如电子邮件正文)上运行全文检索。 他们了解如何分析被查询的字段,并在执行之前将每个字段的分析器(或search_analyzer)应用于查询字符串。 1.term查...

贾峰uk
36分钟前
0
0
java 复制对象有哪些方式

java 复制对象有哪些方式 Apache的 Common beanutils库 org.apache.commons.beanutils.BeanUtils.copyProperties(dest,origin); Springframework 的BeanUtil 依赖: <dependency> ......

黄威
51分钟前
2
0
jstack的简单使用

公司测试反应, 一个java应用的机器, 即使不做交易, cpu始终是30%多, 于是想到了jstack, 实践步骤记录一下: 1, 找出java应用的进程号 ps -ef|grep 应用名|grep -v grep 2, 找出pid下的cpu占用...

零二一七
58分钟前
1
0
导入CSV文件就行数据整理分析

#-*-coding:utf-8-*-import csv,os,re,mathlocalPath=input("请输入所有群文件的根目录:") #所有QQ群文件的物理根目录路径def info(): info_dic=[] dirList=os.listdi...

Kefy
今天
5
0
CoreText进阶(六)-内容大小计算和自动布局

CoreText进阶(六)-内容大小计算和自动布局 其它文章: CoreText 入门(一)-文本绘制 CoreText入门(二)-绘制图片 CoreText进阶(三)-事件处理 CoreText进阶(四)-文字行数限制和显示更...

aron1992
今天
1
0
一个Unity高人的博客,涉猎范围很广,深度也很深。

https://blog.csdn.net/ecidevilin/article/list/

爽歪歪ES
今天
0
0
Spring Cloud Config-Git后端

EnvironmentRepository的默认实现使用Git后端,这对于管理升级和物理环境以及审核更改非常方便。要更改存储库的位置,可以在Config Server中设置“spring.cloud.config.server.git.uri”配置...

itcloud
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部