File Coverage

blib/lib/Net/Clacks.pm
Criterion Covered Total %
statement 47 47 100.0
branch n/a
condition n/a
subroutine 16 16 100.0
pod n/a
total 63 63 100.0


line stmt bran cond sub pod time code
1             package Net::Clacks;
2             #---AUTOPRAGMASTART---
3 1     1   56299 use 5.020;
  1         3  
4 1     1   5 use strict;
  1         1  
  1         38  
5 1     1   5 use warnings;
  1         2  
  1         31  
6 1     1   547 use diagnostics;
  1         182049  
  1         12  
7 1     1   239 use mro 'c3';
  1         2  
  1         7  
8 1     1   562 use English;
  1         3070  
  1         5  
9 1     1   367 use Carp;
  1         2  
  1         59  
10             our $VERSION = 23;
11 1     1   452 use autodie qw( close );
  1         12909  
  1         4  
12 1     1   639 use Array::Contains;
  1         671  
  1         43  
13 1     1   486 use utf8;
  1         13  
  1         4  
14 1     1   480 use Encode qw(is_utf8 encode_utf8 decode_utf8);
  1         8380  
  1         58  
15 1     1   6 use feature 'signatures';
  1         2  
  1         113  
16 1     1   6 no warnings qw(experimental::signatures);
  1         7  
  1         28  
17             #---AUTOPRAGMAEND---
18              
19 1     1   505 use Net::Clacks::Client;
  1         2  
  1         40  
20 1     1   559 use Net::Clacks::Server;
  1         3  
  1         47  
21 1     1   434 use Net::Clacks::ClacksCache;
  1         2  
  1         51  
22              
23             1;
24              
25             =head1 NAME
26              
27             Net::Clacks - Fast client/server interprocess messaging and memcached replacement
28              
29             =head1 SYNOPSIS
30              
31             The Net::Clacks system implements a fast client/server based interprocess messaging. For
32             handling a high number of clients, you can run multiple servers in a master/slave configuration.
33             A slave can also run itself as master for it's own slaves, so a tree-like setup is possible.
34              
35             =head1 DESCRIPTION
36              
37             The Net::Clacks system implements a fast client/server based interprocess messaging. For
38             handling a high number of clients, you can run multiple servers in a master/slave configuration.
39             A slave can also run itself as master for it's own slaves, so a tree-like setup is possible.
40              
41             Clacks has two ways to handle data. One is (near) real time messaging, the other is storing in
42             memory (as a replacement for memcached).
43              
44             Clacks has also a DEBUG feature that forwards all messages to a requesting client.
45              
46             The Net::Clacks system implements a fast client/server based interprocess messaging. For
47             handling a high number of clients, you can run multiple servers in a master/slave configuration.
48             A slave can also run itself as master for it's own slaves, so a tree-like setup is possible. This
49             is implemented by using Interclacks mode via OVERHEAD mode setting.
50              
51             =head1 MODULES
52              
53             The server is implemented in L.
54              
55             The client library in L.
56              
57             A more Cache::Memcached compatible client library (caching only, no real time communication) is implemented
58             in the L module.
59              
60             Please also take a look at the examples, this implements a simple chat client.
61              
62              
63             =head1 IMPORTANT UPGRADE NOTES
64              
65             Please make sure to read L before upgrading to a new Net::Clacks version.
66              
67             =head1 AUTHOR
68              
69             Rene Schickbauer, Ecavac@cpan.orgE
70              
71             =head1 Source code repository
72              
73             The official source code repository is located at:
74             L
75              
76             =head1 COPYRIGHT AND LICENSE
77              
78             Copyright (C) 2008-2022 Rene Schickbauer
79              
80             This library is free software; you can redistribute it and/or modify
81             it under the same terms as Perl itself, either Perl version 5.10.0 or,
82             at your option, any later version of Perl 5 you may have available.
83              
84             =cut
85