1. 引言
Flink内部节点之间的通信是用Akka,比如JobManager和TaskManager之间的通信。而operator之间的数据传输是利用Netty。
Spark用Netty通信框架代替Akka,是不是Akka不好?其实他们各有优缺点。
2. 简单比较
Akka:它是基于协程的,性能不容置疑;基于scala的偏函数,易用性也没有话说,但是它毕竟只是RPC通信。
Netty:相比更加基础一点,可以为不同的应用层通信协议(RPC,FTP,HTTP等)提供支持
实践是检验真理的唯一标准,目前尚未发现Flink使用akka遇到性能等问题。
参考原理:
1.Akka介绍: https://blog.csdn.net/hxcaifly/article/details/84998240
2. Netty介绍: https://blog.csdn.net/hxcaifly/article/details/85336795
3. 协程和线程的区别: https://blog.csdn.net/jek123456/article/details/80449694