Telichkin / funbox_test

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Тестовое задания для FunBox

Необходимо реализовать приложение, генерирующее равномерно распределенные случайные числа от 2 до N (конфигурируемый параметр) и проверяющее их на простоту.

Приложение должно состоять из генератора и фильтратора (способ их реализации — на ваше усмотрение).

При запуске приложения генератор начинает генерировать случайные числа с частотой ровно 3000 чисел в секунду и складывать их в очередь в Redis (в структуру типа list). Чем точнее соблюдается скорость 3000 чисел в секунду и чем равномернее по времени они генерируются, тем лучше.

Фильтратор при запуске приложения сразу начинает принимать числа из очереди, проверять их на простоту и добавлять оказавшиеся простыми числа в Redis в структуру типа set.

Запуск приложения

$ git clone https://github.com/Telichkin/funbox_test.git
$ cd funbox_test
$ rebar3 release
$ F_MAX_NUM=1000 F_REDIS_HOST=localhost F_REDIS_PORT=6379 F_REDIS_DB=0 F_QUEUE_KEY=qk F_RESULT_KEY=rk ./_build/default/rel/example/bin/example console

Запуск тестов

$ rebar3 eunit

About

License:Apache License 2.0


Languages

Language:Erlang 100.0%