NAME
KSx::Remote::SearchServer - Make a Searcher remotely accessible.
SYNOPSIS
my
$searcher
= KinoSearch::Search::IndexSearcher->new(
index
=>
'/path/to/index'
);
my
$search_server
= KSx::Remote::SearchServer->new(
searcher
=>
$searcher
,
port
=> 7890,
password
=>
$pass
,
);
$search_server
->serve;
DESCRIPTION
The SearchServer class, in conjunction with SearchClient, makes it possible to run a search on one machine and report results on another.
By aggregating several SearchClients under a PolySearcher, the cost of searching what might have been a prohibitively large monolithic index can be distributed across multiple nodes, each with its own, smaller index.
METHODS
new
my
$search_server
= KSx::Remote::SearchServer->new(
searcher
=>
$searcher
,
# required
port
=> 7890,
# required
password
=>
$pass
,
# required
);
Constructor. Takes hash-style parameters.
searcher - the Searcher that the SearchServer will wrap.
port - the port on localhost that the server should open and listen on.
password - a password which must be supplied by clients.
serve
$search_server
->serve;
Open a listening socket on localhost and wait for SearchClients to connect.
COPYRIGHT AND LICENSE
Copyright 2006-2011 Marvin Humphrey
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.