Я разрабатываю приложение, которое должно обслуживать файлы растровых изображений с различными уровнями масштабирования векторного изображения, хранящегося на сервере.Представьте себе векторизацию данных улиц и зданий и создание на лету плитки PNG для сервиса, подобного Google-картам, в ответ на запрос клиента об определенном уровне масштабирования и координатах.
В моем случаебазовые векторные данные изменяются довольно часто, а уровни масштабирования увеличиваются с гораздо меньшим шагом, чем, например, дюжина или около того фиксированных шагов масштабирования в Картах Google.Следовательно, для меня нецелесообразно предварительно рассчитать все возможные листы и загрузить их на высокопроизводительный статический медиасервер.
Существует ли элегантный способ получить первый запрос на получение определенной плитки отприложение, которое его генерирует, и все последующие запросы на обслуживание со статического медиа-сервера?
Предположим, что как только я сгенерирую плитку на сервере приложений, я сразу же смогу сделать ее доступной на статическом медиа-сервере.
Очевидный подход, который заключался бы в использовании перенаправления, если плитка была сгенерирована ранее, является неоптимальным, поскольку он (а) загрузит сервер приложений множеством ненужных попаданий и (б) снизит общую производительность дляклиент как браузер должен будет отправить два запроса последовательно, прежде чем получать данные изображения, примерно вдвое увеличивая время отклика.
Так что я ищу другие идеи.Например, есть ли способ настроить веб-сервер, чтобы он пытался использовать высокопроизводительную статическую обработку файлов, и если файл не существует, то вместо того, чтобы возвращать 404?, Можно вернуться к вызову приложения?