2013-11-10 6 views
1

Я разрабатываю приложение PHP/MySQL, которое создаст небольшие файлы PDF - штрих-коды с дополнительным текстом и простые текстовые документы 1-2 страниц для клиентов. Эти PDF-файлы будут доступны 1-3 раза в день при создании, но должны оставаться в архиве, для более позднего доступа, который будет очень редок, скажем, 1 из 500 будет доступен в течение более позднего года.Создать PDF-файл, чтобы сохранить его в файловой системе?

Мой вопрос: должен ли я хранить их в файловой системе или генерировать по требованию? Я бы подумал, что они будут генерировать их динамически, потому что во время peek будет генерироваться 1000-5000 штрих-кодов в день, и сохранение этого мусора просто для случайного поиска будет просто пустой тратой пространства сервера.

+0

звучит, как вы уже принял правильное решение. Если вам вряд ли когда-нибудь понадобится их снова, генерация их на лету, скорее всего, будет лучше. И это также избавляет вас от необходимости писать дополнительный код для сохранения и извлечения. Вы можете просто создать PDF-файл, как если бы он никогда не генерировался раньше. – GolezTrol

ответ

1

Мой вопрос: должен ли я хранить их в файловой системе или генерировать на ?

Сделайте оба. Сохраните их, но сделайте это с помощью схемы кэширования, чтобы все, что было старше, скажем, - 1 час, получилось разбитым & регенерировано. Таким образом, вы снижаете давление на свой сервер, чтобы генерировать штрих-код для каждого запроса, но не нужно беспокоиться о постоянном хранении. Схема кэширования должна основываться на ваших потребностях, но такая настройка позволяет вам одновременно сбалансировать преимущества динамической генерации и файловой системы.

Кроме того, если вы регистрируете записи о том, сколько раз данные штрих-кода были доступны, вы могли бы позволить более популярным элементам кэширования.

+1

на самом деле ...^это лучший вариант. Кэширование может показаться как мячик для реализации, но в конечном итоге вы получите лучшее из обоих миров. – TheStoneFox

+1

Спасибо, Джейк! Это блестящая идея с анализом журнала. –

+0

действительно? Генерация документа с 1 по 2 страницы в PDF из источника с использованием правильно реализованной технологии займет меньше времени, чем требуется для запуска Adobe PDF Plug-in в браузере. В наших тестах системы для документов на экране отображается не более 10-15 страниц, как только одна страница, и так же быстро, как один и тот же файл, считанный с диска. –

1

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

Но если ваши пользователи будут более раздраженными, ожидая, чтобы просмотреть PDF-файлы, а не ждать, когда они будут созданы, то лучше хранить их (и, возможно, вместе с JPG просмотром уже созданным)

Смежные вопросы