КС:2015:Проект:redis — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Новая страница: «=== Что требуется === [http://redis.io/ redis] - это популярная in-memory key-value база данных. Требуется реали…»)
 
 
(не показаны 4 промежуточные версии этого же участника)
Строка 5: Строка 5:
  
 
== Чему вы научитесь ==
 
== Чему вы научитесь ==
 +
 
1. Писать сетевые приложения.
 
1. Писать сетевые приложения.
 +
 
2. Работать с фаловой системой.
 
2. Работать с фаловой системой.
  
Строка 15: Строка 17:
  
 
=== Итоговая оценка ===
 
=== Итоговая оценка ===
* '''4 балла'''. Реализованы команды GET и SET
+
* '''4 балла'''. Реализованы и протестированы парсер и сериализатор для RedisValue.
* '''6 балла'''. Реализованы сохранение и загрузка снимка состояния сервера на диск
+
* '''5 балла'''. Сервер принимает подключение от одного клиента и отвечает ошибкой на все запросы.
* '''8 баллов'''. Реализована запись лога команд и восстановление из лога при запуске
+
* '''+1 балл'''. Сервер корректно обрабатывает несколько соединений.
* '''+1 балл'''. Настроена демонизация сервера через upstart или systemd
+
* '''+1 балла'''. Реализованы команды GET и SET(через интерфейс Cmd).
 +
* '''+2 балла'''. Реализованы сохранение и загрузка снимка состояния сервера на диск
 +
* '''+2 балла'''. Сервер обрабатывает каждое соединение в отдельном потоке.
 
* '''+1 балл'''. Поддерживается TTL для ключей
 
* '''+1 балл'''. Поддерживается TTL для ключей
 +
* '''+1 балл'''. Настроена демонизация сервера через upstart или systemd

Текущая версия на 12:50, 19 декабря 2015

Что требуется

redis - это популярная in-memory key-value база данных.

Требуется реализовать собственный сервер, реализующий часть протокола redis.

Чему вы научитесь

1. Писать сетевые приложения.

2. Работать с фаловой системой.

Критерии оценивания

Требования на зачет в конце 1-го модуля

1. Сервер принимает соединения и понимает команды GET и SET. 2. Сервер корректно обрабатывает: некорректные входные данные, разрыв соединения.

Итоговая оценка

  • 4 балла. Реализованы и протестированы парсер и сериализатор для RedisValue.
  • 5 балла. Сервер принимает подключение от одного клиента и отвечает ошибкой на все запросы.
  • +1 балл. Сервер корректно обрабатывает несколько соединений.
  • +1 балла. Реализованы команды GET и SET(через интерфейс Cmd).
  • +2 балла. Реализованы сохранение и загрузка снимка состояния сервера на диск
  • +2 балла. Сервер обрабатывает каждое соединение в отдельном потоке.
  • +1 балл. Поддерживается TTL для ключей
  • +1 балл. Настроена демонизация сервера через upstart или systemd