next up previous contents
suivant: Perl et votre système monter: Perl et le réseau précédent: Des requetes DNS   Table des matières

Partager des variables sur le réseau

Proposer une mécanisme de partages des variables entre différents process n'est déjà pas une chose aisée, mais ce module va encore plus puisqu'il permet de partager des variables entre des process qui tournent sur des ordinateurs différents.

Le principe est simple, un serveur conserve la persistance des données pour tous les process qui se connectent sur ce serveur :

use Tie::RemoteVar;

my $vs = Tie::RemoteVar->new(allow => '127.0.0.1');
$vs->startserver;

Notre premier client va se contenter de lier un hash et en définir une variable :

use Tie::RemoteVar;

my %h;
tie(%h, 'Tie::RemoteVar', id => 'meatball');

$h{stephane} = "toto";

untie %h;

Le second client va se connecter au serveur et récupérer la dite variable :

use Tie::RemoteVar;

my %h;
tie(%h, 'Tie::RemoteVar', id => 'meatball',addr => '127.0.0.1');

print $h{stephane} ."\n";

untie %h;

Il est à noter qu'à la différence des IPCs habituels, le fait que le premier process soit encore en train de s'executer ou pas ne change rien à la disponibilité de la variable.



2006-03-15