2017 © Pedro Peláez
 

library php-message-queue

Simple message queue on php using files

image

bozerkins/php-message-queue

Simple message queue on php using files

  • Sunday, March 11, 2018
  • by bozerkins
  • Repository
  • 2 Watchers
  • 4 Stars
  • 14 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 3 Forks
  • 5 Open issues
  • 5 Versions
  • 0 % Grown

The README.md

PHP Message Queue

A simple php implementation of message queue (or message queue) which can write messages and read messages in a FIFO manner., (*1)

Build Status MIT Licence, (*2)

Installation

composer require bozerkins/php-message-queue

Creating a queue

To define a queue you first need to define some environment configurations. An environment of a queue messaging system defined what folders will be used for operations., (*3)

$queue = new \MessageQueue\Queue(
    new \MessageQueue\Environment(
        [
            'dir' => '/var/my-queue-folder',
            'queue' => 'my-queue'
        ]
    )
);

You can write to queue and read from queue. These are the basic operations., (*4)

NOTE that you can use this with multiple processes. The Message Queue uses flock(), so there shouldn't be a problem., (*5)

# write two messages
$queue->write(
    [
        'my message', 
        'my second message'
    ]
);

# read two messages
print_r($queue->read(2));

For several optimization reasons the queue does not delete messages by itself. To free some disk space from already read messages just run this command from time to time. Please note that this operation is disk write heavy (when lot's of messages are being passed), (*6)

$queue->recycle();

To optimize reads from the queue the library uses a caching construction. Messages are added into file system based cache in chunks, by default single chunk size is 100 messages. If you intend to read more than 100 messages from the queue at once please change the configuration option 'rotate_amount' to a bigger number., (*7)

$queue = new \MessageQueue\Queue(
    new \MessageQueue\Environment(
        [
            'dir' => '/var/my-queue-folder',
            'queue' => 'my-queue',
            'rotate_amount' => 200
        ]
    )
);

Contacts

If you wish to improve the library, feel free to submit merge request or contact me at b.ozerkins@gmail.com, (*8)

The Versions

11/03 2018

dev-master

9999999-dev

Simple message queue on php using files

  Sources   Download

MIT open source

The Requires

 

The Development Requires

by Bogdans Ozerkins

21/07 2017

v0.1.2

0.1.2.0

Simple message queue on php using files

  Sources   Download

MIT

The Requires

 

The Development Requires

by Bogdans Ozerkins

21/07 2017

v0.1.1

0.1.1.0

a simple message queue on php using files

  Sources   Download

open source

The Requires

 

The Development Requires

by Bogdans Ozerkins

06/03 2017

v0.1.0

0.1.0.0

a simple message queue on php using files

  Sources   Download

open source

The Requires

 

The Development Requires

by Bogdans Ozerkins

05/03 2017

v0.0.1

0.0.1.0

a simple message queue on php using files

  Sources   Download

open source

The Requires

 

The Development Requires

by Bogdans Ozerkins