LucyX::Remote::SearchServer - Make a Searcher remotely accessible.
my $searcher = Lucy::Search::IndexSearcher->new( index => '/path/to/index' ); my $search_server = LucyX::Remote::SearchServer->new( searcher => $searcher ); $search_server->serve( port => 7890 );
The SearchServer class, in conjunction with either SearchClient or ClusterSearcher, makes it possible to run a search on one machine and report results on another.
By aggregating several SearchClients under a ClusterSearcher, 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.
my $search_server = LucyX::Remote::SearchServer->new( searcher => $searcher, # required password => $pass, # optional );
Constructor. Takes hash-style parameters.
searcher - the Searcher that the SearchServer will wrap.
password - an optional password which, if supplied, must also be supplied by clients.
$search_server->serve( port => 7890, # required );
Open a listening socket on localhost and wait for SearchClients to connect.
port - the port on localhost that the server should open and listen on.
my $status = $search_server->serve_rpc($sock);
Handle a single RPC from socket $sock. Returns 'done' if the connection should be closed. Returns 'terminate' if the server should shut down. Returns 'continue' if the server should continue to handle requests from this client.
To install Lucy::Simple, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Lucy::Simple
CPAN shell
perl -MCPAN -e shell install Lucy::Simple
For more information on module installation, please visit the detailed CPAN module installation guide.