The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::Clacks - Fast client/server interprocess messaging and memcached replacement

SYNOPSIS

The Net::Clacks system implements a fast client/server based interprocess messaging. For handling a high number of clients, you can run multiple servers in a master/slave configuration. A slave can also run itself as master for it's own slaves, so a tree-like setup is possible.

DESCRIPTION

The Net::Clacks system implements a fast client/server based interprocess messaging. For handling a high number of clients, you can run multiple servers in a master/slave configuration. A slave can also run itself as master for it's own slaves, so a tree-like setup is possible.

Clacks has two ways to handle data. One is (near) real time messaging, the other is storing in memory (as a replacement for memcached).

Clacks has also a DEBUG feature, that forwards all messages to a requesting client.

The Net::Clacks system implements a fast client/server based interprocess messaging. For handling a high number of clients, you can run multiple servers in a master/slave configuration. A slave can also run itself as master for it's own slaves, so a tree-like setup is possible. This is implemented by using Interclacks mode via OVERHEAD mode setting.

PROTOCOL

Clacks is a text based protocol through SSL/TLS encrypted TCP connections. Most of the command are asyncronous and do not generate any return value. These commands are truly fire-and-forget with minimal delay for the client.

A few functions/commands generate one or more lines of data return, so the client has to wait for them. The Net::Clacks::Client module knows what to do in each case, so there is little to none special handling required in the application. The same goes for Net::Clacks::ClacksCache.

MODULES

The server is implemented in Net::Clacks::Server.

The client library in Net::Clacks::Client.

A more Cache::Memcached compatible client library (caching only, no real time communication) is implemented in the Net::Clacks::ClacksCache module.

Please also take a look at the examples, this implements a simple chat client.

IMPORTANT NOTE

Please refer to the included protocol.txt file for information about the CLACKS protocol.

AUTHOR

Rene Schickbauer, <cavac@cpan.org>

Source code repository

The official source code repository is located at: https://cavac.at/public/mercurial/Net-Clacks/

COPYRIGHT AND LICENSE

Copyright (C) 2008-2018 by Rene Schickbauer

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.