PHPackages                             lamoda/tactician-rate-limit - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. lamoda/tactician-rate-limit

AbandonedArchivedLibrary[Utility &amp; Helpers](/categories/utility)

lamoda/tactician-rate-limit
===========================

Tactician command bus middleware for rate limiting command execution

0.1.1(7y ago)6341MITPHPPHP ^7.1

Since Jul 19Pushed 7y ago4 watchersCompare

[ Source](https://github.com/lamoda/tactician-rate-limit)[ Packagist](https://packagist.org/packages/lamoda/tactician-rate-limit)[ RSS](/packages/lamoda-tactician-rate-limit/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (2)Dependencies (4)Versions (4)Used By (1)

Lamoda Tactician Rate Limit Middleware
======================================

[](#lamoda-tactician-rate-limit-middleware)

[![Build Status](https://camo.githubusercontent.com/b9992d3b61b82c53a2487b3d2cbe91e913406b624d9e83522f8c896c6d8eadfa/68747470733a2f2f7472617669732d63692e6f72672f6c616d6f64612f74616374696369616e2d726174652d6c696d69742e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/lamoda/tactician-rate-limit)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/383a9dd44ae0f26689957d9f45b8e8a3205f5058c482805f09b3e6fe6872be5f/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6c616d6f64612f74616374696369616e2d726174652d6c696d69742f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/lamoda/tactician-rate-limit/?branch=master)[![Code Coverage](https://camo.githubusercontent.com/0c4f02fd716c67123d538213f0bfd42b343b3e62d1b2c144feadb130922e0003/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6c616d6f64612f74616374696369616e2d726174652d6c696d69742f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/lamoda/tactician-rate-limit/?branch=master)[![Build Status](https://camo.githubusercontent.com/e60a2b9ba1d21cb4dca1d7c9f7dbf40b48910bbe1980e53ac6c5a9db595076e5/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6c616d6f64612f74616374696369616e2d726174652d6c696d69742f6261646765732f6275696c642e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/lamoda/tactician-rate-limit/build-status/master)

Installation
------------

[](#installation)

Usage is as simple as

```
composer require lamoda/tactician-rate-limit
```

After that you need to choose library that is providing rate limiting capabilities. For now there out of the box support for the following libraries:

- [davedevelopment/stiphle](https://github.com/davedevelopment/stiphle)

To use this library do the following:

1. Require `stiphle` via composer: ```
    composer require davedevelopment/stiphle
    ```
2. Configure middleware: ```
    $rateLimitProvider = new MatchingCommandClassRateLimitProvider(
    	RateLimitedCommand::class,
    	3, // max commands to execute per interval
    	1000 // interval in milliseconds
    );

    $rateLimiter = new StiphleRateLimiterAdapter(new LeakyBucket());

    $rateLimitMiddleware = new RateLimitMiddleware(
    	$rateLimitProvider,
    	$rateLimiter
    );

    // Create command bus with this middleware:
    $commandBus = new CommandBus([
     	$rateLimitMiddleware,
     	// other middlewares
    ]);
    ```

If you are using Symfony: use [lamoda/tactician-rate-limit-bundle](https://github.com/lamoda/tactician-rate-limit-bundle)

###  Health Score

25

—

LowBetter than 36% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~224 days

Total

2

Last Release

2675d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ed906771163ff68cfb365bdd3b8278a3ce1b464f94051ff7ab50c03a30110efe?d=identicon)[scaytrase](/maintainers/scaytrase)

![](https://avatars.githubusercontent.com/u/1481343?v=4)[Pavel Savelyev](/maintainers/pavelsavelyev)[@pavelsavelyev](https://github.com/pavelsavelyev)

---

Top Contributors

[![omnilight](https://avatars.githubusercontent.com/u/3306537?v=4)](https://github.com/omnilight "omnilight (2 commits)")

---

Tags

phprate-limitingtactician

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lamoda-tactician-rate-limit/health.svg)

```
[![Health](https://phpackages.com/badges/lamoda-tactician-rate-limit/health.svg)](https://phpackages.com/packages/lamoda-tactician-rate-limit)
```

###  Alternatives

[symfony/lock

Creates and manages locks, a mechanism to provide exclusive access to a shared resource

514135.1M626](/packages/symfony-lock)[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.6k38.2k](/packages/matomo-matomo)[phpro/soap-client

A general purpose SoapClient library

8895.9M52](/packages/phpro-soap-client)[ecotone/ecotone

Enterprise architecture layer for Laravel and Symfony — CQRS, Event Sourcing, Durable Workflows (Sagas, Orchestrators), Projections, and Outbox messaging via PHP attributes.

562565.8k42](/packages/ecotone-ecotone)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

749284.3k37](/packages/civicrm-civicrm-core)[illuminate/broadcasting

The Illuminate Broadcasting package.

7126.9M203](/packages/illuminate-broadcasting)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
