Hey, I've always wanted to try implementing a server with a xilinx chip. Seems like you folks would be more qualified to do that :)
The short answer is that the server does guarantee order right now. The ASCII protocol doesn't work very well if you reorder the results, but primarily all clients will have been written with that assumption in mind. The longer answer is that binary protocol can technically allow reordering, but it's unclear if any clients support that. Binprot uses opaques or returns keys to tag requests with responses. You can still parallelize an ordered ASCII multiget (ie: "get key1 key2 key3") by creating the iovec structures ahead of time, doing the hashing/lookup in parallel and filling the results before sending the response. With binprot each get/response are independently packaged so it's a bit easier, although the protocol bloat makes it less useful at high rates. People have also written papers already on implementing memcached with FPGA's or highly parallel microprocessors (tilera, MIT's tilera precursor, etc). Hopefully you're familiar with them before diving into this. May I ask if you can share any other details of this project? is it a proof of concept or some kind of a product? have fun, -Dormando On Mon, 23 Jan 2017, Ravi Kiran wrote: > HI , > We are planning to use the MemchaheD software and accelerate it with hardware > offload. We would like to know > from protocol prospective each connection should maintain the order in which > it receives the command to > send a response back ? > for Ex: If we receive GET1 GET2 SET1 GET3 do we need to send the response in > the same order GET1 GET2 SET1 > GET3 . Can we parallelize commands and send them out off order ? > > Thanks & Regards > Ravi G > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to > [email protected]. > For more options, visit https://groups.google.com/d/optout. > > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
