This is Mir, the web indexing and search engine written in Go.
To compile the sprinter, use the go building tool like such (in cmd/sprinter)
go build ., or use the Makefile by issuing make sprinter in the main
directory. To build this you obviously need the Go compiler. Release
packages can be found at Github.
Once the Go compiler is installed and the Go path set, you can install this package.
To benchmarks, the sprinter program accepts a -bench flag, but it needs
a MongoDB testing backend in the specific location of ../storage/mongo_test.
This mongo_test folder can be found in the storage folder, and because these
benchmarks use functions that exist in the TestDB source, this location is
hardcoded. When not using this flag, this error won't be encountered. This
means that two extra programs have to be installed, MongoDB and supervisor,
to start the benchmarking.
To print the sprinter output, use the -verbose flag.
Currently, the sprinter command also shows the flags for the testing command,
because of importing this in the main package. The only two sprinter flags
are -verbose and -bench.
A target in the main Makefile can be found, named make archive, that builds
the program and creates a directory structure so that the benchmarking can be run.
This folder is called sprinter and resides in cmd/sprinter, or you can
unpack it from ./sprinter.tar.gz.
In short, the requirements to run all benchmarks are:
- The Go compiler
- MongoDB
- Supervisor If not running a benchmark, but just performing a 2000 request crawl, only the Go compiler is needed.