Так что в конечном итоге мне нужно написать большое количество PDF-файлов (40 000) на диске на сервере UNIX, и я пытаюсь найти способ сделать это эффективно (быстрее/потребляет меньше памяти).Использование параллелизма для создания большого количества PDF-файлов в UNIX
Я использую JasperReports для создания шаблона, который получает в качестве параметров (что означает, что отчет не попадает в базу данных) всю информацию, необходимую для отчета.
Тогда у меня есть простое Java-приложение, которое запрашивает базу данных и приносит набор данных, и для каждой записи он заполняет .jasper и записывает PDF на диск.
Теперь это работает отлично для нескольких сотен записей, но я думаю, что он не будет работать для производства, где число масштабируется до 40 000 записей, а выход процесса будет равным числом PDF-файлов. Выполняя некоторое тестирование, я оцениваю, что процесс займет не менее 3 часов, и я также начинаю беспокоиться о потреблении памяти.
Так что я хотел бы знать, если есть эффективный способ сделать это:
- Должен ли я использовать параллелизм/несколько потоков для этого процесса?
- Может ли кто-нибудь указать мне на образец knonw/пример для такого рода работ?
Спасибо за ваше время
Вы говорите «быстрее/меньше памяти». Часто бывает трудно добиться того и другого. Также см. Рекомендации по [как задать хороший вопрос] (http://stackoverflow.com/help/how-to-ask) – screenmutt
Просто примечание, несколько потоков! = Быстрее – user489041