Hibernate использует несколько типов кэшей и не читает напрямую из базы данных постоянно Вы можете прочитать больше об этом здесь .
Да, я использую OpenOffice в качестве сервера преобразования документа.
, К сожалению, решение Вашей проблемы состоит в том, чтобы породить пул процессов OpenOffice.
пул свободного городского населения ответвление JODConverter (прежде чем это переместилось в code.google.com
) реализовало этот out-of-the-box для Вас.
Я думаю, что ваша интерпретация слова «не синхронизировано» неверна. Простое чтение является атомарным, но вы должны сами позаботиться о переупорядочении и проблемах видимости памяти. Первое обрабатывается с помощью инструкций ограждения в соответствующих местах, второе не является проблемой при чтении (но потенциальная одновременная запись должна обеспечивать надлежащую видимость, а функции Interlocked должны делать if ] они отображаются в LOCKED asm-инструкции).
com / p / jodconverter / wiki / GettingStartedVlad корректен о необходимости выполнить несколько экземпляров OpenOffice на различных портах.
я был бы точно так же, как, чтобы добавить, что OpenOffice, кажется, не стабилен. Мы выполняем 10 экземпляров его в продуктивной среде и настраиваем код для повторения с другим экземпляром, если первая попытка перестала работать. Таким образом, когда один из катастрофических отказов серверов OpenOffice (или не отказывает, но не отвечает ни один), производство не затронут. Так как это - боль, чтобы продолжать перезапускать серверы ежедневно, мы медленно преобразовываем все наши документы JasperReports (см. iReport для деталей). Я не уверен, как Вы используете сервер OpenOffice; мы используем его для слияния писем (заполняющий формы для клиентов). Если бы необходимо преобразовать вещи в PDF, я рекомендовал бы iText.
вы можете попробовать следующее:
Это библиотека на основе Java с открытым исходным кодом, которая позволяет вам работать с открытыми офисными документами без открытого офиса, тем самым устраняя необходимость в OOserver.