Перейти к основному содержимому

21 запись с тегом "Caching"

Посмотреть все теги

· 4 мин. чтения

1. Обзор

Для оптимизации сети некоторые веб-сайты позволяют браузерам кэшировать ресурсы, такие как CSS или JS, в локальном хранилище. Это позволяет браузерам сохранять сетевое обращение для каждого запроса.

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

Есть две основные проблемы с кэшированием данных браузерами дольше, чем требуется:

  • Современные веб-сайты используют богатый набор файлов CSS и JS, которые потребляют много памяти браузера.
  • Веб-сайты, кэширующие конфиденциальные данные, такие как сеансовые файлы cookie, подвержены фишинговым атакам.

В этом руководстве мы увидим, как HTTP -заголовок ответа Clear-Site-Data помогает веб-сайтам очищать локально сохраненные данные из браузеров.

· 5 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим cache2k — легковесную, высокопроизводительную библиотеку кэширования Java в памяти.

2. О cache2k

Библиотека cache2k предлагает быстрое время доступа благодаря неблокирующему и не требующему ожидания доступу к кэшированным значениям. Он также поддерживает интеграцию с Spring Framework, Scala Cache, Datanucleus и Hibernate.

Библиотека поставляется со многими функциями, включая набор потокобезопасных атомарных операций , загрузчик кеша с блокировкой сквозного чтения , автоматическое истечение срока действия , упреждающее обновление, прослушиватели событий и поддержку JCache - реализации JSR107 API. Мы обсудим некоторые из этих функций в этом руководстве.

· 7 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим реализацию Guava Cache — базовое использование, политики исключения, обновление кеша и некоторые интересные массовые операции.

Наконец, мы рассмотрим использование уведомлений об удалении, которые кэш может отправлять.

2. Как использовать кеш гуавы

Давайте начнем с простого примера — давайте кэшируем заглавную форму экземпляров String .

· 3 мин. чтения

1. Обзор

Caffeine cache — это высокопроизводительная библиотека кеша для Java. В этом коротком руководстве мы увидим, как использовать его с Spring Boot .

2. Зависимости

Чтобы начать работу с Caffeine и Spring Boot, мы сначала добавляем зависимости spring-boot-starter-cache и caffeine : [](https://search.maven.org/artifact/com.github.ben-manes.caffeine/caffeine)

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
</dependency>
</dependencies>

· 4 мин. чтения

1. Обзор

В дополнение к реализациям мы можем использовать механизм декларативного кэширования Spring для аннотирования интерфейсов . Например, мы можем объявить кэширование в репозитории Spring Data.

В этом уроке мы собираемся показать, как протестировать такой сценарий.

2. Начало работы

Сначала создадим простую модель:

· 7 мин. чтения

1. Введение

В этой статье мы рассмотрим Caffeineвысокопроизводительную библиотеку кэширования для Java .

Одно фундаментальное различие между кешем и картой заключается в том, что кеш удаляет сохраненные элементы.

Политика вытеснения решает, какие объекты должны быть удалены в любой момент времени. Эта политика напрямую влияет на частоту попаданий в кэш — важнейшую характеристику кэширующих библиотек.

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

2. Зависимость

· 4 мин. чтения

1. Обзор

В этом руководстве мы узнаем, как настроить несколько менеджеров кеша в приложении Spring.

2. Кэширование

Spring применяет кэширование к методам, чтобы наше приложение не выполняло один и тот же метод несколько раз для одного и того же ввода.

Реализовать кэширование в приложении Spring очень просто . Это можно сделать, добавив аннотацию @EnableCaching в наш класс конфигурации:

· 3 мин. чтения

1. Обзор

В этом коротком руководстве мы узнаем , как выполнить вытеснение кеша с помощью Spring. Мы создадим небольшой пример, чтобы продемонстрировать это.

Прежде чем продолжить, ознакомьтесь с нашей статьей «Руководство по кэшированию в Spring» , чтобы ознакомиться с тем, как работает кэширование Spring.

2. Как удалить кэш?

Spring предоставляет два способа удаления кеша: либо с помощью аннотации @CacheEvict к методу, либо путем автоматического подключения CacheManger и его очистки с помощью вызова метода clear() .

· 10 мин. чтения

1. Обзор

Одним из преимуществ уровней абстракции базы данных, таких как фреймворки ORM (объектно-реляционное сопоставление), является их способность прозрачно кэшировать данные, извлеченные из базового хранилища. Это помогает устранить затраты на доступ к базе данных для часто используемых данных.

Прирост производительности может быть значительным, если соотношение чтения/записи кэшированного содержимого велико, особенно для сущностей, состоящих из больших графов объектов.

В этой статье мы исследуем кэш второго уровня Hibernate.

Мы объясняем некоторые основные понятия и, как всегда, иллюстрируем все простыми примерами. Мы используем JPA и возвращаемся к собственному API Hibernate только для тех функций, которые не стандартизированы в JPA.

2. Что такое кэш второго уровня?

· 6 мин. чтения

1. Обзор

В этой статье мы познакомимся с Ehcache , широко используемым кэшем с открытым исходным кодом на основе Java. Он включает в себя хранилища памяти и диска, прослушиватели, загрузчики кеша, API-интерфейсы RESTful и SOAP и другие очень полезные функции.

Чтобы показать, как кэширование может оптимизировать наше приложение, мы создадим простой метод, который будет вычислять квадратные значения предоставленных чисел. При каждом вызове метод вызывает метод calculateSquareOfNumber(int number) и выводит информационное сообщение на консоль.

На этом простом примере мы хотим показать, что вычисление квадратов значений выполняется только один раз, и каждый второй вызов с одним и тем же входным значением возвращает результат из кеша.

Важно отметить, что мы полностью сосредоточены на самом Ehcache (без Spring); если вы хотите увидеть, как Ehcache работает со Spring, прочтите эту статью .

2. Зависимости Maven