Сервис Счетчиков
Сервис Счетчиков на базе FastAPI позволяет инкрементировать, получать и сбрасывать счетчики с поддержкой namespace, application и version. Данные сохраняются в базе данных SQLite.
Возможности
- Инкрементирование счетчика
- Получение текущего значения счетчика
- Сброс счетчика до нуля
- Поддержка пространств имен, приложений и версий
- Безопасность при одновременных запросах
- Разворачивание через Docker
API Документация
После запуска сервиса, интерактивная документация доступна по адресу: http://localhost:8000/docs
Эндпоинты
Инкрементировать счетчик
-
URL:
POST /{namespace}/{application}/{version} -
Описание: Увеличивает счетчик на 1. Если счетчик не существует, создаёт его с начальным значением 1.
-
Параметры:
namespace(строка)application(строка)version(строка)
-
Ответ:
{ "namespace": "my_namespace", "application": "my_app", "version": "1.0", "value": 1 }
Получить значение счетчика
-
URL:
GET /{namespace}/{application}/{version} -
Описание: Возвращает текущее значение счетчика. Если счетчик не найден, возвращает 0.
-
Параметры:
namespace(строка)application(строка)version(строка)
-
Ответ:
{ "namespace": "my_namespace", "application": "my_app", "version": "1.0", "value": 1 }
Сбросить счетчик
-
URL:
DELETE /{namespace}/{application}/{version} -
Описание: Сбрасывает счетчик до 0. Если счетчик не существует, создаёт его с значением 0.
-
Параметры:
namespace(строка)application(строка)version(строка)
-
Ответ:
{ "namespace": "my_namespace", "application": "my_app", "version": "1.0", "value": 0 }
Примеры использования
Инкрементировать счетчик
curl -X POST "http://localhost:8000/my_namespace/my_app/1.0" -H "Content-Type: application/json"
Получить значение счетчика
curl -X GET "http://localhost:8000/my_namespace/my_app/1.0" -H "Content-Type: application/json"
Сбросить счетчик
curl -X DELETE "http://localhost:8000/my_namespace/my_app/1.0" -H "Content-Type: application/json"