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 );
Constructor. Takes hash-style parameters.
searcher - the Searcher that the SearchServer will wrap.
$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, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Lucy
CPAN shell
perl -MCPAN -e shell install Lucy
For more information on module installation, please visit the detailed CPAN module installation guide.