Запуск задания в Hazelcast длится иногда> 2 секунды - PullRequest
0 голосов
/ 20 апреля 2011

мы много используем распределенные задачи Hazelcast и поняли, что иногда просто запуск задачи длится> 2 секунды, даже до того, как сама задача будет выполнена. Мы сделали это на одной машине; то есть нет сетевых накладных расходов. Сама выполняемая задача имеет всего одну строчку кода в своем методе call () (мы поместили System.currentTimeMillis () в начале и конце), хранит переданный аргумент "client" в вызове конструктора - ничего больше.

Задание запускается следующим образом:

FutureTask<Member> task = new DistributedTask<Member>(new NotifyWaitingClientTask(client),
            theId);
    ExecutorService executorService = hazelcastInstance.getExecutorService();
    executorService.execute(task);
...
task.get();

Вопрос: это обычное время? Мы ожидали довольно миллисекунд на локальных машинах.

1 Ответ

1 голос
/ 20 апреля 2011

Это не нормально, если у вас нет двух задач, которые занимают слишком много времени и потоки Executor уже заняты.Таким образом, задача не запустится, пока не появится доступный поток для выполнения, и вы увидите эту задержку.

Если это не так, вы можете придумать код, который мы можем запустить, и воспроизвести проблему.

Fuad

Hazelcast

...