Nano Hash - криптовалюты, майнинг, программирование

Flask: кэширование статических файлов (.js, .css)

Я действительно не мог найти какой-либо ресурс по этому вопросу. Итак, как я могу отделить кеширование представлений/функций от статических файлов (т.е. .css, .js)? Я хочу кэшировать свои статические объекты на неделю, с другой стороны, мне нужно кэшировать функции/представления всего на несколько минут.

Когда я делаю следующее

from flask.ext.cache import Cache
cache = Cache(config={'CACHE_TYPE': 'simple'})
cache.init_app(app)

@cache.cached(timeout=500)
def index():

    return render_template('index.html')

тогда все представления, время кеша объектов устанавливается на одно и то же значение, 500. Как это сделать?

05.06.2015

Ответы:


1

Я бы не стал серверировать статические файлы из моего приложения Python, а попытался бы делегировать это веб-серверу (nginx, apache...). Затем вы можете установить время истечения срока действия с помощью заголовков, контролирующих, как долго браузер должен их кэшировать.

05.06.2015
  • Хорошо, скажем, flask пытается установить кэш 500 для статических объектов (ну, он кэширует все виды вещей или ничего), ang apache пытается установить 1 неделю. У кого будет предпочтение? Статические файлы будут кэшироваться на 500 или 1 неделю? 05.06.2015
  • Если ваш http-сервер обслуживает статические файлы, Flask — нет. Это означает, что Flask вообще не будет их кэшировать. 05.06.2015
  • Я согласен с комментарием выше. Кроме того, вам не нужно обязательно кэшировать их, потому что они не будут перегружать ваш сервер приложений. Файлы будут обслуживаться непосредственно с диска веб-сервером. 05.06.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..