func BenchmarkDefaultWorker(b *testing.B) { log.Println("Testing now Worker which is using go routines to process a text block and to store it into redis!") // test database configuration pwd := "" dbPort := 13 // establish a connection with the database Db := new(database.RedisMulti) Db.InitPool(pwd, dbPort) Db.Flushall() worker := new(analyse.Worker) worker.Db = Db worker.SNIPPET_LENGTH = 120 worker.IsFastMode = false worker.IsInfiniteWorking = false worker.RunNext(searchTerm) r := Db.Pool.Get() defer r.Close() amount, _ := r.Do("SCARD", searchTerm) log.Println("Items have been added to db: " + strconv.FormatInt(amount.(int64), 10)) }
func main() { // preparation to use flags isApiServer := flag.Bool("api", false, "Do you want to start the api server?") isFastMode := flag.Bool("fast", false, "Do you want to run in super fast mode (heavy cpu usage etc.)?") isInfiniteCronjobRun := flag.Bool("infinite", false, "Do you want to run the cronjob infinite?") flag.Parse() if *isApiServer { fmt.Println("Starting API server ...") api.StartServer() } else { fmt.Println("Starting cronjob ...") worker := new(analyse.Worker) worker.START_SEARCH_TERM = START_SEARCH_TERM worker.SNIPPET_LENGTH = SNIPPET_LENGTH worker.isFastMode = *isFastMode worker.isInfiniteWorking = *isInfiniteCronjobRun worker.Run() } }