Re: Ускорение выполнения задачи
От: Blazkowicz Россия  
Дата: 17.07.09 07:06
Оценка:
Здравствуйте, Аноним, Вы писали:

А>В базе есть миллион клиентов, для каждого клиента нужно сгенерировать отчет и сохранить обратно в базу.

А>Сейчас на эту задачу уходит 5 часов если выполнять последовательно.
А>Попробовал через пул-потокв (10 потоков) — заняло 4,5 часов.
А>Согласно бизнес требованиям задача должна выполнятся не более 1 часа.
Таки поставить профайлер и посмотреть на какие этапы уходить больше процессорного времени.

А>Приложение использует Spring + Hibernate и одну базу данных. Потяно что потоки конкурируют за доступ к данным,

Потоки конкурируют на чтение??? Надеюсь вы отчеты без Hibernate строите?

А>но все равно мне непонятно почему 10 потоков не дали значительного прироста производительности.

Возможно потому что узкое место не в CPU?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.