背景
本文我们来看一下Hbase的客户端采用的通信方式,我们都知道日常中常见的有两种客户端模式,比如类似Mysql 连接池的那种同步模式,还有类似http1.0的请求响应模式都是同步模式的一种,不过还有一种是异步模式的客户端,比如本文将要讲到的Hbase客户端,我们今天就来比较一下同步模式和异步模式的优缺点.
同步模式 VS 异步模式
首先我们先直观的来看下两者的对比:
从上图可知,异步客户端相比同步客户端支持更高的客户端吞吐,随后的客户端请求不需要等待前面的请求结束才能开始,服务端可以同时处理他们的请求,不存在互相阻塞的情况。相反,对于同步客户端来说,比如mysql的连接池的请求来说,对于每个连接,每次只能执行一个sql请求,只有这个sql的请求结束后才能发起下一个sql连接,由于每条连接每个时刻只能处理一个sql请求,所以mysql连接需要连接池的方式才能很好的处理客户端的并行处理请求.很明显,异步客户端比同步客户端要好得多。