[BiO BB] custom blast server
jchang at smi.stanford.edu
Wed Dec 5 13:10:10 EST 2001
On Wed, Dec 05, 2001 at 10:37:21AM -0700, Joel Dudley wrote:
> Here is the deal. I am assuming that you suggest that I dump all my
> sequences, format them, and use the BLAST executable provided by NCBI,
> right? I thought about that too. However, The application is going to make a
> BLAST request over the internet and the BLAST server needs to thread (so we
> can handle many concurrent connections) and return the BLAST results to the
> application when the search is complete. I could make a wrapper type server
> in Perl, but I think that is a bad idea. I would like to have something
> cleaner. Ideally I would like to have a Threading server that handles BLAST
> requests via XML RPC or something like that and integrates better with my
> application. Am I making any sense here?
> - Joel
Honestly, no. From the best I can figure out, you have an application
and a BLAST server that are running on separate machines across the
internet. You want the BLAST server to be able to handle multiple
requests concurrently, and you have a relational database of sequences
that you want to BLAST against.
The standard way to do this is to run BLAST over HTTP, and fork an
instance of the executable for every run. You'll get less performance
than a persistant multi-threaded one, but I don't think that's how
NCBI BLAST is written. And anyway, the bottleneck is going to be the
database searches, not the process forking.
I think Iddo asked a good question, and I'm also wondering about the
requirement to be run off the SQL database. I'm not sure what that
has to do with threading and XML RPC.
More information about the BBB