This is a simple redis server. It is part of the coding challenges https://codingchallenges.fyi/challenges/intro
- Resp parser
- Redis server
- the server deserializes incoming requests
- it should handle the following requests:
GET
: get a valueSET
: set a valueEXISTS
: check if a key existsDEL
: delete an entryINCR
: incmrenet a stored number by oneDECR
: decrement a stored number by oneLPUSH
: insert all values at the head of a listRPUSH
: insert all values at the tail of a listSAVE
: save the database to diskPING
: the server should respond with a pong message
- Redis cli
- a cli to generate resp serialized requests
- Server
- server listens for incoming connections on port 6379
- the server should handle requests concurrently
- each request should require a suitable lock to modify the database's state