vault backup: 2024-06-17 18:52:16
This commit is contained in:
parent
8dc716541c
commit
110d7318c2
12
.obsidian/plugins/home-tab/data.json
vendored
12
.obsidian/plugins/home-tab/data.json
vendored
@ -23,13 +23,17 @@
|
||||
"markdownOnly": false,
|
||||
"unresolvedLinks": false,
|
||||
"recentFilesStore": [
|
||||
{
|
||||
"filepath": "_inbox/Принцип локальности.md",
|
||||
"timestamp": 1718639370931
|
||||
},
|
||||
{
|
||||
"filepath": "_inbox/Кэширование.md",
|
||||
"timestamp": 1718639203388
|
||||
"timestamp": 1718639363870
|
||||
},
|
||||
{
|
||||
"filepath": "_inbox/Redis.md",
|
||||
"timestamp": 1718639199908
|
||||
"timestamp": 1718639336820
|
||||
},
|
||||
{
|
||||
"filepath": "wiki/zero/00 HighLoad.md",
|
||||
@ -38,10 +42,6 @@
|
||||
{
|
||||
"filepath": "knowledge/human/Стресс.md",
|
||||
"timestamp": 1718638580710
|
||||
},
|
||||
{
|
||||
"filepath": "_inbox/Репликация в MySQL.md",
|
||||
"timestamp": 1718638377453
|
||||
}
|
||||
],
|
||||
"starredFileStore": [],
|
||||
|
@ -1,5 +1,9 @@
|
||||
{
|
||||
"recentFiles": [
|
||||
{
|
||||
"basename": "Принцип локальности",
|
||||
"path": "_inbox/Принцип локальности.md"
|
||||
},
|
||||
{
|
||||
"basename": "Кэширование",
|
||||
"path": "_inbox/Кэширование.md"
|
||||
@ -195,10 +199,6 @@
|
||||
{
|
||||
"basename": "Ударение",
|
||||
"path": "_inbox/Ударение.md"
|
||||
},
|
||||
{
|
||||
"basename": "Git",
|
||||
"path": "knowledge/dev/Git.md"
|
||||
}
|
||||
],
|
||||
"omittedPaths": [],
|
||||
|
@ -14,6 +14,10 @@ linked:
|
||||
|
||||
Ускорить сложные запросы может кэширование: мы помещаем результат вычислений в некоторое хранилище (например, [Memcached](Memcached.md) или [Redis](Redis.md)), которое обладает отличными характеристиками по времени доступа к информации. Теперь вместо обращений к медленным, сложным и тяжелым backend’ам нам достаточно выполнить запрос к быстрому кэшу.
|
||||
|
||||
![](Pasted%20image%2020240617184722.png)
|
||||
|
||||
Кэширование основывается на [принципе локальности](Принцип%20локальности.md).
|
||||
|
||||
==Системы используемые для кэширования обычно не являются надежными, так что не следует хранить только там какие-то важные данные.== Данные можно разделить на несколько категорий:
|
||||
- «**Можно потерять**». К этой категории относятся кэши выборок из базы данных. Потеря таких ключей не так страшна, потому что мы можем легко восстановить их значения, обратившись заново к backend’у. Однако частые потери кэшей приводят к излишним обращениям к БД.
|
||||
- «**Не хотелось бы потерять**». Здесь можно упомянуть счетчики посетителей сайта, просмотров ресурсов и т.п. Хоть и восстановить эти значения иногда напрямую невозможно, но значения этих ключей имеют ограниченный по времени смысл: через несколько минут их значение уже неактуально, и будет рассчитано заново.
|
||||
|
@ -1,5 +1,6 @@
|
||||
---
|
||||
aliases:
|
||||
aliases:
|
||||
- принципе локальности
|
||||
tags:
|
||||
- зрелость/🌱
|
||||
date:
|
||||
@ -9,4 +10,9 @@ zero-link:
|
||||
parents:
|
||||
linked:
|
||||
---
|
||||
Программе свойственно в определенный промежуток времени работать с некоторым подмножеством данных из общего набора. В случае оперативной памяти это означает, что если программа работает с данными, находящимися по адресу 100, то с большей степенью вероятности следующее обращение будет по адресу 101, 102 и т.п., а не по адресу 10000, например. То же самое с жестким диском: его буфер наполняется данными из областей, соседних по отношению к последним прочитанным секторам, если бы наши программы работали в один момент времени не с некоторым относительно небольшим набором файлов, а со всем содержимым жесткого диска, буфер жесткого диска был бы бессмысленным. Буфер автомагнитолы совершает упреждающее чтение с диска следующих минут музыки потому, что мы, скорее всего, будем слушать музыкальный файл последовательно, а не перескакивать по набору музыки и т.п.
|
||||
Программе свойственно в определенный промежуток времени работать с некоторым небольшим подмножеством данных из всего набора.
|
||||
|
||||
Примеры:
|
||||
- Для чатов - последние сообщения
|
||||
- Для новостей - последние новости
|
||||
- Для сервиса такси - активные заказы
|
BIN
meta/files/Pasted image 20240617184722.png
Normal file
BIN
meta/files/Pasted image 20240617184722.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 MiB |
Loading…
Reference in New Issue
Block a user