Search code examples
rediskey-valueg-wankey-value-store

G-WAN and Key-Value store in C


Is it advisable and possible to use an expiration time on the data stored via the Key-Value Store in G-WAN, or is it better and more stable to use a solution like Redis (especially if that involves storing a large number of values) ?


Solution

  • Is it advisable and possible to use an expiration time on the data stored via the Key-Value Store in G-WAN?

    Possible, certainly. See the kv.c example about how to use both kv_do() to process expirations and a dedicated index for time values.

    Advisable? Actually, this is the way G-WAN works since 2009. And it does it pretty well.

    or is it better and more stable to use a solution like Redis?

    I have never used Redis, nor I benchmarked it in such a test but I remember to have read its code once and, well, I would not bet on it being either faster or more scalable than G-WAN.

    Besides, they don't use the same protocol if I am not mistaking. But the G-WAN 'protocol handlers' will let you implement the Redis query language in G-WAN if Redis can't be made to understand HTTP requests.

    Why don't you do your own research and write such a (tiny) app, benchmark it, and then submit the results for positive criticism / suggestions to the authors of both Redis and G-WAN?

    Then, you will have the answer to your question.