Here are my observations.

1. Let's create wiki page where we will keep the protocol definition and
reflect all the changes.

2. I would put op_code to the first place. This will make possible to
eliminate length field for many messages. Look at your handshake request -
it is always of fixed length. Why do we need length then? Variable length
operations - puts, putalls, getalls, etc will definitely need length field
(or keys count and length of each key separately in each binary object -
let's discuss it later).

3. I would also add build date and revision hash to handshake. Same as we
do for Ignite.

4. I would like to have explicit protocol version for client to make
possible for newer clients to work with older servers. Moreover, I think
there may be some third party protocol implementations on other platforms
which may not be driven by Ignite community and their versioning may be
different. So, explicit protocol version is really handy here.

Thanks!

--Yakov

Reply via email to