thrift介绍及其在java中的使用
thrift是什么?
thrift是一套开源RPC框架,最初由facebook开发,后进入apache进行孵化。thrift最大的特点是可以实现跨语言的开发。
thrift框架结构
- ×××部分代表由thrift描述文件生成的代码
- 棕色部分和红色部分代表分别使用×××部分代码生成的客户端代码和服务器端代码
- 紫色部分和蓝色部分代表thrift运行依赖的库
thrift支持的protocols
TBinaryProtocol 普通二进制格式
TCompactProtocol 压缩二进制格式,传输效率更高
TJSONProtocol JSON格式
...
thrift支持的transports
TSocket 普通阻塞式I/O传输
TFramedTransport server采用非阻塞格式时需采用此传输,按块传输
...
thrift支持的服务器端类型
TSimpleServer 阻塞式、单线程
TThreadPoolServer 阻塞式、多线程
TNonblockingServer 非阻塞式、多线程
使用thrift进行开发(java)
编写thrift描述文件,如何编写并生成java代码可参考官网资料
通过引入生成的java代码开发服务器端和客户端程序
服务器端和客户端程序的开发需要依赖libthrift jar包,可按如下方式生成:
从官网下载最新tar包,进入解压文件下lib/java子目录下,执行ant命令即可生成libthrift jar包
服务器端、客户端开发基本步骤可参考如下链接:
http://jnb.ociweb.com/jnb/jnbJun2009.html
http://www.micmiu.com/soa/rpc/thrift-sample/
转载于:https://blog.51cto.com/boyzone/1140017
thrift介绍及其在java中的使用相关推荐
- 23种设计模式介绍以及在Java中的实现
本文章出自:blog.csdn.net/anxpp/artic- 若要查看原文请点击 文章中的示例源码在github上:github.com/anxpp/JavaD- 由于CSDN上的下拉翻页比较麻烦 ...
- ProtoBuf的介绍以及在Java中使用protobuf将对象进行序列化与反序列化
场景 ProtoBuf简介 protocol buffers 是一种语言无关.平台无关.可扩展的序列化结构数据的方法,它可用于(数据)通信协议.数据存储等. Protocol Buffers 是一种灵 ...
- Java中Synchronized的用法(简单介绍)
简单介绍 synchronized是Java中的关键字,是一种同步锁.它修饰的对象有以下几种: 1. 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调 ...
- [转]详细介绍java中的数据结构
详细介绍java中的数据结构 本文介绍的是java中的数据结构,本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类.一起来看本文吧! 也许你已经熟练使用了java.util包里面的各 ...
- Java中BigDecimal类介绍及用法
Java中BigDecimal类介绍及用法 Java中提供了大数字(超过16位有效位)的操作类,即 java.math.BinInteger 类和 java.math.BigDecimal 类,用于高 ...
- Java中List集合介绍(炒鸡详细呦)
Java中List集合介绍 文章目录 Java中List集合介绍 1,Java集合介绍 2,List介绍 2.1 ArrayList集合 2.2 LinkedList集合 3,List常用方法 3.1 ...
- gPRC简介以及Java中使用gPRC实现客户端与服务端通信(附代码下载)
场景 ProtoBuf的介绍以及在Java中使用protobuf将对象进行序列化与反序列化: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/det ...
- Java中的策略模式实例教程
策略模式是一种行为模式.用于某一个具体的项目有多个可供选择的算法策略,客户端在其运行时根据不同需求决定使用某一具体算法策略. 策略模式也被称作政策模式.实现过程为,首先定义不同的算法策略,然后客户端把 ...
- 四十三、深入Java中的数组流,数据流和对象流操作
@Author:Runsen @Date:2020/6/8 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排名 ...
最新文章
- [翻译]敏捷软件开发 一 之简要介绍
- java 监控执行时间_java-监测方法运行时间 | 学步园
- matlab中y=x(:,ones(1,3))的含义解读
- Windows Phone 7 Bitmap编码
- Java开发人员应该知道的三件事
- CCIE-LAB-第五篇-DHCP+DHCP-Realy+DHCP snooping
- .net string format
- python 卡方检验_【技术】卡方检验及其Python实现
- 2021年中国助听器市场趋势报告、技术动态创新及2027年市场预测
- mysql5.6 安装配置 老系统_mysql 5.6 从陌生到熟练之-安装配置(windows系统)
- ES6学习笔记一(var let const三者区别)
- MLDN的超级玛丽。。。
- 如何搭建反欺诈策略与模型
- [大话技术]话聊有趣的23种设计模式
- 大话西游2人气稳定服务器,大话西游2开服18年的老区还得排队,凌烟阁确实够火...
- 博弈论——4.1三人博弈的纳什均衡练习题
- 如何改变计算机桌面字体,怎么调整电脑桌面字体
- nginx 配置之 proxy_pass参数详解
- 律师登台痛批,BSA置身事外
- 经典例题C语言程序解决数学问题
热门文章
- docker java 中文乱码_java使用awt包在生产环境docker部署时出现中文乱码的处理
- android tabhost的使用方法,android TabHost(选项卡)的使用方法
- html没有内容怎么爬,Url没有在网页中返回正确的html(对于我的Java爬虫)
- Windows 10 修改网络名字
- ga设置迭代次数_种群进化+邻域搜索的混合算法(GA+TS)求解柔性作业车间调度问题(FJSP)算法介绍...
- 20201219:力扣219周周赛题解
- object string java_java实现Object转String的4种方法小结
- 浅谈智能卡加密芯片在智能设备领域的技术运用
- 宝宝安全座椅什么牌子好?[自己参考]
- VB SendKeys 语句