Добавил описание проекта
This commit is contained in:
commit
df3c44d40d
44
README.md
Normal file
44
README.md
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
# LRU Cache Server
|
||||
|
||||
Высоконагруженный in-memory key-value сервер с алгоритмом вытеснения LRU и текстовым протоколом на C++.
|
||||
|
||||
---
|
||||
|
||||
## Описание проекта
|
||||
|
||||
Система кэширования данных типа "ключ-значение" (аналог Redis/Memcached) для ускорения доступа к часто запрашиваемым данным в высоконагруженных приложениях.
|
||||
|
||||
**Особенности:**
|
||||
- Алгоритм вытеснения LRU (Least Recently Used)
|
||||
- Конкурентный доступ к данным
|
||||
- Множество TCP-подключений
|
||||
- Текстовый протокол
|
||||
|
||||
---
|
||||
|
||||
## Функциональные требования
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `SET key value [ttl]` | Сохранить пару с опциональным временем жизни |
|
||||
| `GET key` | Получить значение или "MISS" |
|
||||
| `DEL key` | Удалить пару |
|
||||
| `STATS` | Показать статистику (хиты/промахи, RPS) |
|
||||
| `CLEAR` | Очистить весь кэш |
|
||||
| `HELP` | Показать список доступных команд |
|
||||
|
||||
---
|
||||
|
||||
## Технологический стек
|
||||
|
||||
- **Язык:** C++17/20
|
||||
- **Компилятор:** GCC 11+, Clang 14+, MSVC 2022
|
||||
- **Система сборки:** CMake 3.10+
|
||||
- **Сеть:** POSIX sockets (epoll/kqueue)
|
||||
- **Хранилище:** std::unordered_map + std::list для LRU
|
||||
- **Многопоточность:** std::thread + std::mutex + std::atomic
|
||||
|
||||
---
|
||||
|
||||
## Структура проекта
|
||||
|
||||
Loading…
Reference in a new issue