cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tyler Hobbs <ty...@datastax.com>
Subject Re: How is the underlying CQL native binary protocol implemented?
Date Tue, 23 Dec 2014 19:42:16 GMT
I suggest reading the native protocol spec:
https://github.com/apache/cassandra/blob/trunk/doc/native_protocol_v3.spec

The native protocol is not RPC.  One of the reasons why it is more
efficient than thrift is that multiple operations can be in flight at the
same time with a single connection.

The java driver uses Netty for its implementation.  If I had to pick a
single class that's the "core", I would say Message.java:
https://github.com/datastax/java-driver/blob/2.1/driver-core/src/main/java/com/datastax/driver/core/Message.java

On Tue, Dec 23, 2014 at 1:11 AM, 孔嘉林 <kongjialin92@gmail.com> wrote:
>
> Hi, I am curious about the underlying implementation of the CQL native
> binary protocol. It is also a RPC protocol, right? But how can it
> outperform thrift as they are both RPC protocol?
> The Cassandra driver has already implemented this native binary protocol,
> could anyone tell me which part of the source code is the core of the
> binary protocol(java or c++ driver)?
>
> Thank you very much,
> Joy
>


-- 
Tyler Hobbs
DataStax <http://datastax.com/>

Mime
View raw message