大数据学习之路61-Netty的基本使用

本文介绍了Spark从Akka转向Netty的原因,探讨了Netty的NIO特性,并通过实例展示了如何使用Netty构建简单的RPC通信。Netty通过线程池和管道(pipeline)机制提高了性能,简化了服务端和客户端的开发,使得开发者可以专注于处理器的业务逻辑。
摘要由CSDN通过智能技术生成

之前我们写了Akka的RPC通信,那么为什么Spark底层要这样设计呢?

因为以后我们要玩的是分布式并行计算,我们需要将任务提交到集群上执行。那么这个任务在Master上执行还是在Worker上执行?答案是在Worker上执行,严格的来说是在Worker的子进程上执行,就好比我们之前使用的yarn,yarn上有nodemanager,而任务并不在nodemanager上执行,而是在nodemanager启动的yarnchild上执行。Worker一开始就将自己的资源注册到Master上,然后Master就知道哪些Worker上有资源。然后Master就将计算任务分配到某台或某几台Worker上。

在spark2.0已经将Akka移除,因为Akka的扩展性并不是很好,于是又用Netty重新写了一套。

接下来我们来看看Netty的思想:

什么是NIO,我们之前写的Socket就是传统的IO,传统的IO是有问题的。NIO就是new IO(新IO)它的异步性要比传统IO强大。

接下来我们开始写Netty的RPC:

我们要写N

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未来@音律

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值