Happy !

MasashiUmezawa / Tarantube

Project infos

License MIT
Tags tarantalk, message queue
Creation date 2017-01-28
Website

Monticello registration

About Tarantube

Tarantool queue wrapper based on Tarantalk.

tarantalk := TrTarantalk connect: 'taran:talk@localhost:3301'.
tarantalk tubes. "return currently available tubes"

"Preparing a FIFO tube"
tube := tarantalk ensureTubeNamed: 'my_tube' .

"Adding tasks to the tube"
1 to: 10 do:  [:idx | tube putTaskWith: idx asString]. 

"Taking tasks periodically (with 2 seconds timeout)"
tube repeatTakeTaskFor: 2 ifAvailable: [:task | Transcript cr; show: {task. task data}. task done].

"Get stats"
tube statistics.

Installation

Metacello new
    smalltalkhubUser: 'Pharo' project: 'MetaRepoForPharo50';
    configuration: 'Tarantube';
    version: #stable;
    load.

And extend your tarantool with queue module (https://github.com/tarantool/queue)

Running

Before running tarantool, you need to require queue module in your script.lua file.

    box.cfg{listen = 3301}
    queue = require('queue')