AnyEvent-Pg-Pool-Multiserver

 view release on metacpan or  search on metacpan

example/ex.pl  view on Meta::CPAN


use lib 'lib';

use AnyEvent;
use AnyEvent::Pg::Pool::Multiserver;

my $servers = [
  {
    id   => 1,
    name => 'remote 1',
    conn => 'host=remote1 port=5432 dbname=mydb user=myuser password=mypass',
  },
  {
    id   => 2,
    name => 'remote 2',
    conn => 'host=remote2 port=5432 dbname=mydb user=myuser password=mypass',
  },
];
my $pool = AnyEvent::Pg::Pool::Multiserver->new( servers => $servers, local => 1 );

my $cv;

$cv = AE::cv;

# multi-server request

lib/AnyEvent/Pg/Pool/Multiserver.pm  view on Meta::CPAN

=head1 NAME

AnyEvent::Pg::Pool::Multiserver - Asyncronious multiserver requests to Postgresql with AnyEvent::Pg

=head1 SYNOPSIS

  my $servers = [
    {
      id   => 1,
      name => 'remote 1',
      conn => 'host=remote1 port=5432 dbname=mydb user=myuser password=mypass',
    },
    {
      id   => 2,
      name => 'remote 2',
      conn => 'host=remote2 port=5432 dbname=mydb user=myuser password=mypass',
    },
  ];
  my $pool = AnyEvent::Pg::Pool::Multiserver->new( servers => $servers, local => 1 );

  # multi-server request

  $pool->selectall_arrayref(
    query  => 'SELECT val FROM ( SELECT 1 AS val ) tmp WHERE tmp.val = $1;',
    args   => [ 1 ],
    cb     => sub {



( run in 1.017 second using v1.01-cache-2.11-cpan-49f99fa48dc )