PHPackages                             overblog/thrift-bundle - 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. overblog/thrift-bundle

ActiveSymfony-bundle

overblog/thrift-bundle
======================

OverBlog Thrift Bundle

0.9.19(7y ago)4418.5k13[1 issues](https://github.com/overblog/ThriftBundle/issues)MITPHPPHP ^5.3.6|~7.0

Since Oct 24Pushed 7y ago29 watchersCompare

[ Source](https://github.com/overblog/ThriftBundle)[ Packagist](https://packagist.org/packages/overblog/thrift-bundle)[ Docs](https://github.com/overblog/ThriftBundle.git)[ RSS](/packages/overblog-thrift-bundle/feed)WikiDiscussions 0.9 Synced 6d ago

READMEChangelog (9)Dependencies (6)Versions (22)Used By (0)

OverBlog Thrift Bundle
======================

[](#overblog-thrift-bundle)

[![Build Status](https://camo.githubusercontent.com/2bfe9775e4be66afc6cd6b754381ee62fc495c444f6b5913b6882b3e4c9af1af/68747470733a2f2f7472617669732d63692e6f72672f6f766572626c6f672f54687269667442756e646c652e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/overblog/ThriftBundle)

What is this repository ?
-------------------------

[](#what-is-this-repository-)

This is a custom version of the Thrift protocol for PHP

Usefull links ?
---------------

[](#usefull-links-)

Getting the bundle
------------------

[](#getting-the-bundle)

### The Composer way

[](#the-composer-way)

Update your composer json with this new dependency into the "require" section.

```
// composer.json
"require": {
    "php": ">=5.3.3",
    "symfony/symfony": "2.1.*",
    ...
    "overblog/thrift-bundle": "*" // insert this line
}
```

And then run `composer update`

Setting up the bundle
---------------------

[](#setting-up-the-bundle)

Let's start by registering the bundle into the AppKernel

```
// app/AppKernel.php
public function registerBundles()
{
    $bundles = array(
        ...
        new Overblog\ThriftBundle\OverblogThriftBundle(),
        ...
    );

    return $bundles;
}
```

You can now create your Service.thrift file and place it in a ThriftDefinition directory, in your own bundle.

For example: MyNameSpace/MyBundle/ThriftDefinition/Service.thrift

You need to configure the compiler to build the right files.

```
#app/config/config.yml
  overblog_thrift:
    services:
      *service_name*:
        definition: Service
        namespace: ThriftModel\Service
        definitionPath: /PATH/ # Path of the definition
        server: true    # Define if server class will be generated
```

You are now able to generate the model with `php app/console thrift:compile CompleteBundleName Service`

Model will be automatically generated on the cache warmup (`php app/console cache:warmup`) in your cache directory.

You can set in the option "protocol" too

To use server
-------------

[](#to-use-server)

Create your handler that extends `Overblog\ThriftBundle\Api\Extensions\BaseExtension` and implements `ThriftModel\Service\ServiceIf`. Then register it in your bundle:

```
#Bundle/Ressources/config/services.yml
    services:
      thrift.handler.service:
        class: BundleName\Handler\Service
        arguments: [@service_container]
```

Add the server config to your project's config.yml:

```
#app/config/config.yml
    overblog_thrift:
      servers:
        *service_name*:
          service: *service_name*
          handler: thrift_api.processor.service
```

If you wan't to use Thrift over HTTP Transport, you must add the bundle's routing to your project.

```
#app/config/routing.yml
    OverblogThriftBundle:
      resource: "@OverblogThriftBundle/Resources/config/routing.yml"
      prefix:   /
```

Or you can start the socket version with the command:

```
php app/console thrift:server *service_name*

```

To use client
-------------

[](#to-use-client)

HTTP Client: Add this to your projects's config.yml :

```
#app/config/config.yml
  overblog_thrift:
    clients:
      *client_name*:
        service: *service_name*:
        type: http
        hosts:
          comment:
            host: domain/thrift
            port: 80
```

Socket Client: Add this to your projects's config.yml :

```
#app/config/config.yml
  overblog_thrift:
    clients:
      *client_name*:
        service: *service_name*:
        type: socket
        hosts:
          *host_name*:
            host: localhost
            port: 9090
```

Multi Socket Client: Add this to your projects's config.yml :

```
#app/config/config.yml
  overblog_thrift:
    clients:
      *client_name*:
        service: *service_name*:
        type: socket
        hosts:
          *host_name*:
            host: localhost
            port: 9090
          *host_name_2*:
            host: localhost
            port: 9091
```

Then you can call the client:

```
// your_controller.php

$service = $this->getContainer()->get('thrift.client.*client_name*');
$client = $service->getClient();

$service = $service->getFactory('ThriftModel\Service\Service');
$service->property = 121354984651354647;
$service->name = 'Name 1';

$id = $client->execMethod($service);
```

Contribute
----------

[](#contribute)

Tests:

Install [phpunit](https://phpunit.de/manual/current/en/installation.html).

In the bundle directory:

```
phpunit
```

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity34

Limited adoption so far

Community23

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~119 days

Recently: every ~113 days

Total

21

Last Release

2565d ago

PHP version history (2 changes)v0.8.5PHP &gt;=5.3.0

0.9.12PHP ^5.3.6|~7.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/7067603?v=4)[Webedia - Overblog](/maintainers/Overblog)[@overblog](https://github.com/overblog)

---

Top Contributors

[![mcg-web](https://avatars.githubusercontent.com/u/1496283?v=4)](https://github.com/mcg-web "mcg-web (11 commits)")[![AlexeyKupershtokh](https://avatars.githubusercontent.com/u/499778?v=4)](https://github.com/AlexeyKupershtokh "AlexeyKupershtokh (7 commits)")[![OwlyCode](https://avatars.githubusercontent.com/u/1631270?v=4)](https://github.com/OwlyCode "OwlyCode (6 commits)")[![xkobal](https://avatars.githubusercontent.com/u/1136820?v=4)](https://github.com/xkobal "xkobal (4 commits)")[![farazive](https://avatars.githubusercontent.com/u/7568991?v=4)](https://github.com/farazive "farazive (2 commits)")[![barduck007](https://avatars.githubusercontent.com/u/2427613?v=4)](https://github.com/barduck007 "barduck007 (2 commits)")[![ker2x](https://avatars.githubusercontent.com/u/76649?v=4)](https://github.com/ker2x "ker2x (1 commits)")[![ooflorent](https://avatars.githubusercontent.com/u/168498?v=4)](https://github.com/ooflorent "ooflorent (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/overblog-thrift-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/overblog-thrift-bundle/health.svg)](https://phpackages.com/packages/overblog-thrift-bundle)
```

###  Alternatives

[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[scheb/2fa

Two-factor authentication for Symfony applications (please use scheb/2fa-bundle to install)

578630.7k1](/packages/scheb-2fa)[shopware/storefront

Storefront for Shopware

684.2M148](/packages/shopware-storefront)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[symfony/mcp-bundle

Symfony integration bundle for Model Context Protocol (via official mcp/sdk)

40170.8k10](/packages/symfony-mcp-bundle)[symfony/ai-bundle

Integration bundle for Symfony AI components

30282.3k6](/packages/symfony-ai-bundle)

PHPackages © 2026

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