什么是RPCRPC(Remote Procedure Call Protocol)远程过程调用协议。 通俗的描述是:客户端在不知道调用细节的情况下,调用存在于远程计算机上的某个过程或函数,就像调用本地应用程序中的一样。 正式的描述是:一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC主要特质RPC是协议:协议意味着规范。目前典型的RPC实现包括:Dubbo、Thrift
转载 2024-03-03 09:33:10
27阅读
文章目录Hadoop RPC 框架解析1.Hadoop RPC框架概述1.1 RPC框架特点1.2 Hadoop RPC框架2.Java基础知识回顾2.1 Java反射机制与动态代理2.1.1 代理关键类&接口信息2.1.2 动态代理创建对象的过程2.2 Java网络编程2.3 Java NIO2.3.1 简介2.3.2 常用类3.Hadoop RPC基本框架分析3.1 RPC基本概念3
Flume 1.8.0 Developer Guide — Apache Flume http://flume.apache.org/FlumeDeveloperGuide.html The remote Flume agent needs to have an AvroSource (or a T
转载 2018-10-30 10:11:00
386阅读
2评论
一.简介Zookeeper是一个分布式协调服务,就是为用户的分布式应用程序提供协调服务。Zookeeper本身就是一个分布式程序(只要有半数以上节点存活,zk就能正常服务)。Zookeeper所提供的服务涵盖:主从协调、服务器节点动态上下线、统一配置管理、分布式共享锁、统一名称服务…… 虽然说可以提供各种服务,但是zookeeper在底层其实只提供了两个功能:管理(存储,读...
原创 2021-08-31 09:15:54
99阅读
一.简介Zookeeper是一个分布式协调服务,就是为用户的分布式应用程序提供协调服务。Zookeeper本身就是一个分布式程序(只要有半数以上节点存活,zk就能正常服务)。Zookeeper所提供的服务涵盖:主从协调、服务器节点动态上下线、统一配置管理、分布式共享锁、统一名称服务…… 虽然说可以提供各种服务,但是zookeeper在底层其实只提供了两个功能:管理(存储,读...
原创 2022-02-10 11:13:21
67阅读
rpc框架之avro 学习 1 - hello world
转载 2015-09-23 20:12:00
177阅读
2评论
一、什么是RPCRPC(Remote Procedure Call),即远程过程调用。我们可以直接从字面意思去理解,就是进行对运行在远程的一些服务进行调用。下面我们举例说明:1.单一系统我们传统的系统,整个系统都是运行在单个服务器上,对于服务(如:下订单、支付、查询等)的调用,都是调用本地的(或者说服务是写在本地的)2.RPC远程过程调用,说白了就是不需要将服务写在本地上,转而直接调用在远程服务
转载 2024-02-29 14:47:24
83阅读
HTTP/1.0无连接,无状态HTTP1.0默认使用 Connection:cloose,浏览器每次请求都需要与服务器建立一个 TCP 连接,服务器处理完成后立即断开 TCP 连接,服务器不跟踪每个客户端也不记录过去的请求HTTP/1.1格式:header + body头部信息:key-value优点:简单,灵活和易于扩展,应用广泛和跨平台缺点:无状态,明文传输,不安全窃听风险,篡改风险,冒充风险
一.RPC框架必会的基本知识1.1 什么是RPCRPC(Remote Procedure Call ——远程过程调用),它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络的技术。一次完整的RPC同步调用流程:服务消费方,也就是我们常说的客户端,以本地调用方式调用客户端存根;什么叫客户端存根?就是远程方法在本地的模拟对象,一样的也有方法名,也有方法参数,client stub接收到调
转载 2024-09-16 12:39:28
64阅读
平常使用的RPC中,例如webservice,使用的习惯类似于下图:如果需要基于netty实现一个我们熟悉的RPC框架。逻辑如下:在上面的框架中,server端存在着一个问题,就是单点问题,也就是说,当服务端“挂了”之后,框架的使用就造成了单点屏障。我们可以通过zookeeper来实现服务端的负载均衡...
原创 2021-07-08 11:22:24
179阅读
平常使用的RPC中,例如webservice,使用的习惯类似于下图:如果需要基于netty实现一个我们熟悉的RPC框架。逻辑如下:在上面的框架中,server端存在着一个问题,就是单点问题,也就是说,当服务端“挂了”之后,框架的使用就造成了单点屏障。我们可以通过zookeeper来实现服务端的负载均衡...
原创 2022-03-24 10:29:33
94阅读
  注:下面使用dubbo依赖的是zookeeper注册中心,这里没有详细的介绍。在配置之前,请自行准备好zookeeper环境。    后续如果写zookeeper的配置会补放链接添加Gradle依赖compile group: 'com.alibaba', name: 'dubbo', version: '2.5.10'//dubbo compile group: 'org.apach
转载 2024-03-08 10:31:48
91阅读
三台机器zookeeper的集群环境搭建Zookeeper 集群搭建指的是 ZooKeeper 分布式模式安装。 通常由 2n+1台 servers 组成。 这是因为为了保证 Leader 选举(基于 Paxos 算法的实现) 能过得到多数的支持,所以 ZooKeeper 集群的数量一般为奇数。Zookeeper 运行需要 java 环境, 所以需要提前安装 jdk。 对于安装leader+fol
class LockThread implements Runnable { private DistributedLock lock; public LockThread(int threadId,CountDownLatch latch) throws Exception { this.lock = new DistributedLock(threa
thrift、avro、probobuf 这几个rpc框架的基本思想都差不多,先定义IDL文件,然后由各自的编译器(或maven插件)生成目标语言的源代码,但是,根据idl生成源代码这件事,如果每次都要手动敲命令,未免太无聊了,幸好这三种框架都提供了对应的maven插件来完成代码的自动生成,本文演示了这三种框架的maven插件用法。 一、maven-thrift-plugin
转载 2015-09-22 23:19:00
211阅读
2评论
      在分布式系统中,为了提供系统的可用性和稳定性一般都会将服务部署在多台服务器上,为了实现自动注册自动发现远程服务,通过ZK,和ProtocolBuffe 以及Nettyr实现一个简单的分布式RPC框架。   首先简单介绍一下Zookeeper和ProtocalBuffer &nb
rpc框架之 avro 学习 2 - 高效的序列化
转载 2015-09-23 22:45:00
103阅读
2评论
行 支持数据追加 列 频繁进行小部分列查询
转载 2017-11-04 21:56:00
72阅读
2评论
  在学习大数据过程中经常见到 avro,下面大概说下自己的理解:  1、 简介Avro是Hadoop中的一个子项目,也是Apache中一个独立的项目,Avro是一个基于二进制数据传输高性能的中间件。在Hadoop的其他项目中例如HBase(Ref)和Hive(Ref)的Client端与服务端的数据传输也采用了这个工具。Avro是一个数据序列化的系统。Avro 可以将数据...
原创 2023-04-21 00:31:05
114阅读
## 实现"avro hive"的步骤 ### 流程图 ```mermaid stateDiagram [*] --> 开始 开始 --> 下载Avro库 下载Avro库 --> 创建Avro表 创建Avro表 --> 导入数据 导入数据 --> 查询数据 查询数据 --> 结束 结束 --> [*] ``` ### 甘特图 ```m
原创 2024-05-14 03:22:32
21阅读
  • 1
  • 2
  • 3
  • 4
  • 5