PHPackages                             michabbb/toper - 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. michabbb/toper

ActiveLibrary

michabbb/toper
==============

v0.1.1(11y ago)031PHP

Since Jul 11Pushed 5y ago2 watchersCompare

[ Source](https://github.com/michabbb/toper)[ Packagist](https://packagist.org/packages/michabbb/toper)[ RSS](/packages/michabbb-toper/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependencies (4)Versions (6)Used By (1)

This is a fork of allegro/toper
===============================

[](#this-is-a-fork-of-allegrotoper)

Changes
-------

[](#changes)

- return guzzle reponse object (remove own response object)

Toper
=====

[](#toper)

Toper is a PHP Rest client based on popular Guzzle Rest Client. It base responsibility is to perform tasks connected with a load balancing and a fault tolerance.

Many modern web applications to keep up with a huge traffic needs to connect to not one backend machine, but often to several identical machines. Toper allows you to implement this very fast and simply. The main goal of Toper is to watch service instances and if any of them failed Toper will switch to other one.

Features
--------

[](#features)

- Round robin
- Fault tolerance

Installing via Composer
-----------------------

[](#installing-via-composer)

The recomended way to intall toper is using Composer

```
#install composer
curl -sS https://getcomposer.org/installer | php
```

Edit your composer.json file and add Toper to require section:

```
{
    "require": {
        "allegro/toper": "dev-master"
    }
}
```

Quick start
-----------

[](#quick-start)

Here is example how create a request by Toper. In this case Toper is configured to use multiple destinations to protect against a breakdown if any of them fail.

```
use Toper\GuzzleClientFactory;
use Toper\StaticHostPoolProvider;

$hostPollProvider = new StaticHostPoolProvider(
    array("http://service1.com", "http://service2.com")
);
$guzzleClientFactory = new GuzzleClientFactory();

$toper = new \Toper\Client($hostPollProvider, $guzzleClientFactory);
$response = $toper->get('/')
    ->send();

if($response->getStatusCode() == 200) {
    echo $response->getBody();
}
```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 86.8% 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 ~10 days

Total

2

Last Release

4319d ago

### Community

Maintainers

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

---

Top Contributors

[![andrejczyn](https://avatars.githubusercontent.com/u/710132?v=4)](https://github.com/andrejczyn "andrejczyn (46 commits)")[![michabbb](https://avatars.githubusercontent.com/u/3524595?v=4)](https://github.com/michabbb "michabbb (4 commits)")[![gwieczorek-it](https://avatars.githubusercontent.com/u/3666757?v=4)](https://github.com/gwieczorek-it "gwieczorek-it (3 commits)")

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/michabbb-toper/health.svg)

```
[![Health](https://phpackages.com/badges/michabbb-toper/health.svg)](https://phpackages.com/packages/michabbb-toper)
```

###  Alternatives

[coincheck/coincheck

Bindings of coincheck API

202.2k](/packages/coincheck-coincheck)

PHPackages © 2026

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