Igbinary is a drop in replacement for the standard php serializer. Instead of time and space consuming textual representation, igbinary stores php data structures in compact binary form. Savings are significant when using memcached or similar memory based storages for serialized data. About 50% reduction in storage requirement can be expected. Specific number depends on your data.

Unserialization performance is at least on par with the standard PHP serializer. Serialization performance depends on the "compact_strings" option which enables duplicate string tracking. String are inserted to a hash table which adds some overhead. In usual scenarios this does not have much significance since usage pattern is "serialize rarely, unserialize often". With "compact_strings" option igbinary is usually a bit slower than the standard serializer. Without it, a bit faster.

Issue to get Igbinary support directly in Core!: #3014514: Make igbinary the default serializer if available, it saves 50% time on unserialize and memory footprint

Issue to get compression support directly in Core!: #1281408: Add a compressing serializer decorator

Features

PHP serialization is heavily used within Drupal. Drupal 8 introduced serialization services that could be swapped. This module offers igbinary based serialization services.

Requirements

This module requires the following libraries:

Installation

See the README.md for installation instructions and more implementation details.

Supporting organizations: 

Project information

Releases