承接 amanat/rps-counter 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

amanat/rps-counter

最新稳定版本:v1.8

Composer 安装命令:

composer require amanat/rps-counter

包简介

Rps Counter Middleware, Model and Migrations

README 文档

README

Пакет для Laravel, предназначенный для подсчёта запросов в секунду (RPS) и логирования деталей запросов в базу данных. Пакет использует Redis для включения/выключения функциональности подсчёта и сохраняет данные о запросах (URL, IP-адрес, метод, время ответа и код состояния) в таблицу базы данных.

Возможности:

Middleware для отслеживания деталей запросов и времени ответа.
Сохранение данных запросов в таблицу rps_counts.
Использование Redis для включения/выключения подсчёта запросов.
Совместимость с Laravel 8.x, 9.x, 10.x и 11.x.
Включает миграции и конфигурацию для простой настройки.

Требования:

  • PHP 7.3 или 8.0+
  • Laravel 8.x, 9.x, 10.x или 11.x
  • Настроенный сервер Redis в вашем приложении Laravel

Установка:

Установите пакет через Composer:
composer require amanat/rps-counter

Опубликуйте конфигурацию и миграции:
php artisan vendor:publish --tag=rps-counter-config
php artisan vendor:publish --tag=rps-counter-migrations

Выполните миграции:
php artisan migrate

Зарегистрируйте middleware:
Добавьте middleware в ваш файл app/Http/Kernel.php в нужную группу middleware (например, web или api):
protected $middlewareGroups = [ 'web' => [ \Amanat\RpsCounter\Http\Middleware\RpsCounterMiddleware::class, ], ];

Настройка:

Пакет предоставляет файл конфигурации config/rps-counter.php, где проставляется ключ для переключения redis: return [ 'redis_key' => env('RPS_COUNTER_REDIS_KEY', 'settings:rps_count'), ];

Использование:

После настройки middleware будет:

Данные которые будут логироватся в таблицу rps_counts.

  • URL
  • IP-адрес
  • HTTP-метод
  • время ответа (в миллисекундах)
  • код состояния каждого запроса

А так же включатся или выключатся в зависимости от значения ключа в redis.

Схема базы данных:

Таблица rps_counts, создаваемая миграцией, содержит следующие столбцы:

  • id: Первичный ключ
  • url: URL запроса
  • ip: IP-адрес клиента
  • type: HTTP-метод (например, GET, POST)
  • speed: Время ответа в миллисекундах
  • status_code: Код состояния HTTP-ответа
  • created_at, updated_at: Временные метки

Лицензия MIT

统计信息

  • 总下载量: 2.16k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-06-09