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.