Skip to main content.
home | support | download

Back to List Archive

swish-e - tuning

From: Aaron Bazar <aaronb(at)>
Date: Wed Aug 27 2003 - 13:07:26 GMT
Good Day everyone!

I am working on tuning my swish-e setup. I am using speedycgi. Here are some
of my observations/benchmarks. I used the apache benchmark software. I also
tried a few different set ups. Here are the results...

perl with API simple highlight ----> 2 requests/second
perl with swish-e binary and simple highlight ---> 4 requests/second

perl with API no highlighting ===> 3.23 requests/second
perl with swish-e no highlighting ===> 4.74 requests/second

speedycgi with highlighting and API ---> 5.5 requests/second
speedycgi highlighting and swish-e ----> 9 requests/second

speedycgi with no highlighting 10 requests/second using binary
speedycgi with no highlighting 17 requests/second using api

So, here is my conclusion from these tests: Only use the API if you are
going to use NO highlighting. If you use highlighting, it seems to me that
using the swish-e binary is faster. This is not what I expected.

Here is my theory, and I suspect one of the developers has a better
explanation (or my set up is flawed). When using the API a search query is
performed by the cgi script (speedycgi process) AND sorting is done by the
script, one after the other. When the swish-e binary is used, another
process is launched to get the data and the cgi script parses the results.
In this case, the slower cgi script only is doing one job and the faster
binary is doing the other job. Perhaps this is why I got the results that I

Anyway, the performance increase in turning off the highlighting, using the
API, and running under speedycgi is pretty good. Speedycgi is very, very
easy to get working. I'd try mod_perl, but it does not seem worth it since
speedy does such a good job.

Best regards,

Aaron Bazar
Received on Wed Aug 27 13:07:37 2003