Hello,

I'm just looking for ideas:

I want to build a server for the swish-e search engine.  This would avoid
the cost of forking and exec'ing a swish-e binary, plus avoid the startup
costs of opening and parsing the header of the swish index file(s).  The
build process for swish-e builds a C library, and I have a working xs
interface.

A number of people at the open source conference recommended POE.  But, I'm
not sure if POE can help.  One problem is that searches can take some time
for large indexes.  So the blocking could be an issue.  Also, on errors
swish calls exit(), so I'd still need to fork to protect the parent server.

So, I was thinking of a pre-forking (Apache like) design would be best,
especially if there was a manager that would replace children that exit(),
or could spawn/kill more children depending on load.  That would avoid the
forking for each request (search), yet still protect the parent from a
child's death.

I really like the looks of POE, but I'm not clear if POE can help.

Any suggestions?

I'm also haven't though about sharing or caching open index files between
child processes.  It would be nice to avoid separate copies of the same
index file in different child processes.

Apologies for the vague question.

Thanks,


Bill Moseley
mailto:[EMAIL PROTECTED]

Reply via email to