Мы используем Apache FOP для преобразования большого количества XML в AFP и PDF. Наша текущая нагрузка будет составлять около 25 тысяч файлов за запуск в системе HP-UX. Всего у нас есть 8 потоков, которые используются для инициализации и запуска преобразования FOP в режиме производитель-потребитель. В последнее время во время преобразования было несколько сбоев, и при поиске мы получили общие ошибки FOP, такие как:
**ERROR,2460364,FOToPDF_Thread_11,FOP Exception, something.pdf,Failed to resolve font with embed-url './Fonts/arial.ttf'**
или это ошибка, из-за которой не удается загрузить файл метрик шрифта, хотя файлы не повреждены с правильными разрешениями. Создается много других PDF-файлов, поэтому это не может быть проблемой.
Мы также завершаем с:
**java.io.FileNotFoundException: /PDF/20130111130002/something.pdf (Too many open files (errno:24))**
Судя по логам и обрабатываемому объему, это похоже на проблему FOP. Я читал, что у FOP была эта проблема в прошлом с файлами шрифтов. Были случаи, когда Apache открывал каждый файл шрифта несколько раз и не закрывал дескрипторы, что приводило к большому количеству открытых файлов. Это должно было быть исправлено, но если это все еще сохраняется, что было бы хорошим и быстрым решением для этого, кроме публикации этого в списках Apache?
Можно ли увеличить максимальное количество файлов HP-UX для дескрипторов открытых файлов на процесс выше 2048? Это поможет? Любые другие предложения?