Sign inSign up

kirisaki/twinkle

By kirisaki

•Updated almost 7 years ago

UDP-based light key-value store

Image
0

378

kirisaki/twinkle repository overview

⁠Twinkle

UDP-based, light key-value store.

⁠Usage

Use docker. Remenber to open UDP port.

$ docker run -d -p 3000:3000/udp kirisaki:twinkle

Docker repositry is https://hub.docker.com/repository/docker/kirisaki/twinkle⁠

⁠Client libraly

⁠Protocol

The protcol of twinkle is quiet simple. Only send binary messages expressed following. Its byte-order is big endian.

⁠Ping
⁠Request
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x01  |                UUID     
 |        |
 +--------+--------+--------+------...
          |
          |
 ...------+
⁠Response
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x01  |                UUID     
 |        |
 +--------+--------+--------+------...
          |
          |
 ...------+
⁠Get
⁠Reuest
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x02  |                UUID     
 |        |
 +--------+--------+--------+------...
          |       Key       |
          |      Length     | key octets ...
 ...------+-----------------+-----...
⁠Response(key found)
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x01  |                UUID     
 |        |
 +--------+--------+--------+------...
          |
          | value octets
 ...------+--------+------...
⁠Response(key not found)
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x02  |                UUID     
 |        |
 +--------+--------+--------+------...
          |
          |
 ...------+
⁠Set
⁠Request
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x03  |                UUID     
 |        |
 +--------+--------+--------+------...
          |       Key       |
          |      Length     | key octets ...
 ...------+-----------------+-----...
          |
          | value octets ...
 ...------+--------------...

⁠Response
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x01  |                UUID     
 |        |
 +--------+--------+--------+------...
          |
          |
 ...------+
⁠Unset
⁠Request
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x04  |                UUID     
 |        |
 +--------+--------+--------+------...
          |       Key       |
          |      Length     | key octets ...
 ...------+-----------------+-----...
⁠Response
  0      7 8     15 16    23 24    31
 +--------+--------+--------+--------+
 |  0x01  |                UUID     
 |        |
 +--------+--------+--------+------...
          |
          |
 ...------+

⁠License

BSD-3-Clause⁠

Tag summary

Content type

Image

Digest

Size

1015.6 kB

Last updated

almost 7 years ago

docker pull kirisaki/twinkle