This project has retired. For details please refer to its Attic page.
LucyX::Remote::SearchServer – Apache Lucy Documentation
Apache Lucy™


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
    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.


    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.