vault backup: 2024-06-18 08:59:14
This commit is contained in:
parent
634bf0bbe7
commit
70b759a4b9
18
.obsidian/plugins/home-tab/data.json
vendored
18
.obsidian/plugins/home-tab/data.json
vendored
@ -24,24 +24,24 @@
|
||||
"unresolvedLinks": false,
|
||||
"recentFilesStore": [
|
||||
{
|
||||
"filepath": "_inbox/LSM дерево.md",
|
||||
"timestamp": 1718690013544
|
||||
"filepath": "_inbox/Least Recently Used.md",
|
||||
"timestamp": 1718690349183
|
||||
},
|
||||
{
|
||||
"filepath": "_inbox/B-tree.md",
|
||||
"timestamp": 1718690011423
|
||||
"filepath": "_inbox/Most Recently Used.md",
|
||||
"timestamp": 1718690345433
|
||||
},
|
||||
{
|
||||
"filepath": "_inbox/Принцип локальности.md",
|
||||
"timestamp": 1718689824661
|
||||
"filepath": "Инвалидация кэша.md",
|
||||
"timestamp": 1718690233629
|
||||
},
|
||||
{
|
||||
"filepath": "_inbox/Кэширование.md",
|
||||
"timestamp": 1718689745911
|
||||
"timestamp": 1718690151207
|
||||
},
|
||||
{
|
||||
"filepath": "_inbox/Кэширование на стороне браузера.md",
|
||||
"timestamp": 1718689727983
|
||||
"filepath": "_inbox/LSM дерево.md",
|
||||
"timestamp": 1718690013544
|
||||
}
|
||||
],
|
||||
"bookmarkedFileStore": [],
|
||||
|
@ -1,5 +1,21 @@
|
||||
{
|
||||
"recentFiles": [
|
||||
{
|
||||
"basename": "Least Recently Used",
|
||||
"path": "_inbox/Least Recently Used.md"
|
||||
},
|
||||
{
|
||||
"basename": "Most Recently Used",
|
||||
"path": "_inbox/Most Recently Used.md"
|
||||
},
|
||||
{
|
||||
"basename": "Инвалидация кэша",
|
||||
"path": "Инвалидация кэша.md"
|
||||
},
|
||||
{
|
||||
"basename": "Кэширование",
|
||||
"path": "_inbox/Кэширование.md"
|
||||
},
|
||||
{
|
||||
"basename": "LSM дерево",
|
||||
"path": "_inbox/LSM дерево.md"
|
||||
@ -12,10 +28,6 @@
|
||||
"basename": "Принцип локальности",
|
||||
"path": "_inbox/Принцип локальности.md"
|
||||
},
|
||||
{
|
||||
"basename": "Кэширование",
|
||||
"path": "_inbox/Кэширование.md"
|
||||
},
|
||||
{
|
||||
"basename": "Кэширование на стороне браузера",
|
||||
"path": "_inbox/Кэширование на стороне браузера.md"
|
||||
@ -24,10 +36,6 @@
|
||||
"basename": "Кэширование на стороне клиента Nginx",
|
||||
"path": "_inbox/Кэширование на стороне клиента Nginx.md"
|
||||
},
|
||||
{
|
||||
"basename": "Инвалидация кэша",
|
||||
"path": "Инвалидация кэша.md"
|
||||
},
|
||||
{
|
||||
"basename": "Cache miss",
|
||||
"path": "Cache miss.md"
|
||||
@ -116,14 +124,6 @@
|
||||
"basename": "Last Frequently Used",
|
||||
"path": "_inbox/Last Frequently Used.md"
|
||||
},
|
||||
{
|
||||
"basename": "Most Recently Used",
|
||||
"path": "_inbox/Most Recently Used.md"
|
||||
},
|
||||
{
|
||||
"basename": "Least Recently Used",
|
||||
"path": "_inbox/Least Recently Used.md"
|
||||
},
|
||||
{
|
||||
"basename": "Generational Collection",
|
||||
"path": "knowledge/dev/java/gc/Generational Collection.md"
|
||||
|
@ -18,15 +18,15 @@ LRU (Least Recently Used) — это алгоритм управления кэ
|
||||
1. **Отслеживание использования**: Каждый элемент в кэше имеет метку времени или счетчик, который обновляется каждый раз, когда элемент используется.
|
||||
2. **Удаление устаревших элементов**: Когда необходимо освободить место в кэше для нового элемента, удаляется элемент с наименьшим значением метки времени или счетчика, то есть наименее недавно использованный элемент.
|
||||
|
||||
**Преимущества LRU**:
|
||||
**Преимущества**:
|
||||
- Эффективное управление памятью.
|
||||
- Простота реализации и понятная логика работы.
|
||||
|
||||
**Недостатки LRU**:
|
||||
**Недостатки**:
|
||||
- Высокие накладные расходы на обновление меток времени или счетчиков.
|
||||
- Возможность неэффективной работы в некоторых специфических случаях, когда часто используемые элементы могут вытесняться из кэша.
|
||||
|
||||
Примеры использования LRU:
|
||||
**Примеры использования:**
|
||||
- Кэширование страниц в веб-браузерах.
|
||||
- Управление оперативной памятью в операционных системах.
|
||||
- Кэширование данных в базах данных и других системах хранения.
|
@ -13,3 +13,7 @@ linked:
|
||||
- "[[Least Recently Used]]"
|
||||
---
|
||||
Наименее редко используемые данные вытесняются
|
||||
|
||||
**Недостатки**:
|
||||
|
||||
**Примеры использования:**
|
@ -19,6 +19,8 @@ linked:
|
||||
|
||||
Кэширование основывается на [принципе локальности](Принцип%20локальности.md).
|
||||
|
||||
Чаще всего реализуется на основе хэш-таблиц.
|
||||
|
||||
==Системы используемые для кэширования обычно не являются надежными, так что не следует хранить только там какие-то важные данные.== Данные можно разделить на несколько категорий:
|
||||
- «**Можно потерять**». К этой категории относятся кэши выборок из базы данных. Потеря таких ключей не так страшна, потому что мы можем легко восстановить их значения, обратившись заново к backend’у. Однако частые потери кэшей приводят к излишним обращениям к БД.
|
||||
- «**Не хотелось бы потерять**». Здесь можно упомянуть счетчики посетителей сайта, просмотров ресурсов и т.п. Хоть и восстановить эти значения иногда напрямую невозможно, но значения этих ключей имеют ограниченный по времени смысл: через несколько минут их значение уже неактуально, и будет рассчитано заново.
|
||||
|
@ -26,7 +26,7 @@ linked:
|
||||
- Опасно из-за риска мгновенной инвалидации
|
||||
- Алгоритмы вытеснения
|
||||
|
||||
Алгоритмы вытеснения:
|
||||
**Алгоритмы вытеснения:**
|
||||
- Алгоритм Белади. Несуществующий идеальный алгоритм. Храним только нужную информацию, не нужную не храним.
|
||||
- [Least Recently Used](Least%20Recently%20Used.md)
|
||||
- [Most Recently Used](Most%20Recently%20Used.md)
|
||||
|
Loading…
Reference in New Issue
Block a user