vault backup: 2024-06-18 08:24:14
This commit is contained in:
parent
f77f65d649
commit
6f418c2c19
23
.obsidian/plugins/home-tab/data.json
vendored
23
.obsidian/plugins/home-tab/data.json
vendored
@ -13,7 +13,7 @@
|
|||||||
"fontColorType": "default",
|
"fontColorType": "default",
|
||||||
"fontWeight": 600,
|
"fontWeight": 600,
|
||||||
"maxResults": 25,
|
"maxResults": 25,
|
||||||
"showStarredFiles": false,
|
"showbookmarkedFiles": true,
|
||||||
"showRecentFiles": true,
|
"showRecentFiles": true,
|
||||||
"maxRecentFiles": 5,
|
"maxRecentFiles": 5,
|
||||||
"storeRecentFile": true,
|
"storeRecentFile": true,
|
||||||
@ -23,15 +23,30 @@
|
|||||||
"markdownOnly": false,
|
"markdownOnly": false,
|
||||||
"unresolvedLinks": false,
|
"unresolvedLinks": false,
|
||||||
"recentFilesStore": [
|
"recentFilesStore": [
|
||||||
|
{
|
||||||
|
"filepath": "_inbox/Кэширование.md",
|
||||||
|
"timestamp": 1718688217945
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filepath": "_inbox/Старт с холодным кэшом.md",
|
||||||
|
"timestamp": 1718688179345
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filepath": "_inbox/Перестройка кэша.md",
|
||||||
|
"timestamp": 1718688112432
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"filepath": "Home.md",
|
"filepath": "Home.md",
|
||||||
"timestamp": 1718687964332
|
"timestamp": 1718688013137
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"starredFileStore": [],
|
"bookmarkedFileStore": [],
|
||||||
"searchDelay": 0,
|
"searchDelay": 0,
|
||||||
"replaceNewTabs": false,
|
"replaceNewTabs": false,
|
||||||
"newTabOnStart": false,
|
"newTabOnStart": false,
|
||||||
"closePreviousSessionTabs": true,
|
"closePreviousSessionTabs": true,
|
||||||
"omnisearch": true
|
"omnisearch": true,
|
||||||
|
"showOmnisearchExcerpt": true,
|
||||||
|
"showStarredFiles": false,
|
||||||
|
"starredFileStore": []
|
||||||
}
|
}
|
9076
.obsidian/plugins/home-tab/main.js
vendored
9076
.obsidian/plugins/home-tab/main.js
vendored
File diff suppressed because it is too large
Load Diff
4
.obsidian/plugins/home-tab/manifest.json
vendored
4
.obsidian/plugins/home-tab/manifest.json
vendored
@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"id": "home-tab",
|
"id": "home-tab",
|
||||||
"name": "Home tab",
|
"name": "Home tab",
|
||||||
"version": "1.1.2",
|
"version": "1.2.1",
|
||||||
"minAppVersion": "0.16.0",
|
"minAppVersion": "1.6.0",
|
||||||
"description": "A browser-like search tab for your local files.",
|
"description": "A browser-like search tab for your local files.",
|
||||||
"author": "Renso",
|
"author": "Renso",
|
||||||
"authorUrl": "https://github.com/olrenso",
|
"authorUrl": "https://github.com/olrenso",
|
||||||
|
File diff suppressed because one or more lines are too long
@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"id": "obsidian-enhancing-export",
|
"id": "obsidian-enhancing-export",
|
||||||
"name": "Enhancing Export",
|
"name": "Enhancing Export",
|
||||||
"version": "1.10.5",
|
"version": "1.10.6",
|
||||||
"minAppVersion": "0.12.0",
|
"minAppVersion": "1.6.3",
|
||||||
"description": "This is a enhancing export plugin for Obsidian. It allows to export to formats like Html, DOCX, ePub and PDF or Markdown(Hugo) etc.",
|
"description": "This is a enhancing export plugin for Obsidian. It allows to export to formats like Html, DOCX, ePub and PDF or Markdown(Hugo) etc.",
|
||||||
"author": "YISH",
|
"author": "YISH",
|
||||||
"authorUrl": "https://github.com/mokeyish",
|
"authorUrl": "https://github.com/mokeyish",
|
||||||
|
44
.obsidian/plugins/obsidian-hider/main.js
vendored
44
.obsidian/plugins/obsidian-hider/main.js
vendored
File diff suppressed because one or more lines are too long
@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"id": "obsidian-hider",
|
"id": "obsidian-hider",
|
||||||
"name": "Hider",
|
"name": "Hider",
|
||||||
"version": "1.3.1",
|
"version": "1.4.0",
|
||||||
"minAppVersion": "1.4.0",
|
"minAppVersion": "1.6.0",
|
||||||
"description": "Hide UI elements such as tooltips, status, titlebar and more",
|
"description": "Hide UI elements such as tooltips, status, titlebar and more",
|
||||||
"author": "@kepano",
|
"author": "@kepano",
|
||||||
"authorUrl": "https://www.twitter.com/kepano",
|
"authorUrl": "https://www.twitter.com/kepano",
|
||||||
|
22
.obsidian/plugins/obsidian-hider/styles.css
vendored
22
.obsidian/plugins/obsidian-hider/styles.css
vendored
@ -1,5 +1,6 @@
|
|||||||
/* Hides vault name */
|
/* Hides vault name */
|
||||||
.hider-vault .nav-folder.mod-root > .nav-folder-title .nav-folder-title-content {
|
.hider-vault .workspace-sidedock-vault-profile,
|
||||||
|
body.hider-vault:not(.is-mobile) .workspace-split.mod-left-split .workspace-sidedock-vault-profile {
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -17,25 +18,6 @@
|
|||||||
padding-right: 4px;
|
padding-right: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Hide ribbon */
|
|
||||||
.hider-ribbon.mod-macos.is-hidden-frameless:not(.is-fullscreen):not(.is-popout-window) .workspace-tabs.mod-top-left-space .workspace-tab-header-container {
|
|
||||||
padding-left: calc(var(--frame-left-space) + var(--ribbon-width));
|
|
||||||
}
|
|
||||||
|
|
||||||
.hider-ribbon .workspace-ribbon.mod-left {
|
|
||||||
display:none;
|
|
||||||
}
|
|
||||||
.hider-ribbon .workspace-ribbon.mod-right {
|
|
||||||
visibility:hidden;
|
|
||||||
position:absolute;
|
|
||||||
}
|
|
||||||
.hider-ribbon .workspace-split.mod-right-split {
|
|
||||||
margin-right:0;
|
|
||||||
}
|
|
||||||
.hider-ribbon .workspace-split.mod-left-split {
|
|
||||||
margin-left:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Hide meta */
|
/* Hide meta */
|
||||||
.hider-meta .markdown-reading-view .metadata-container {
|
.hider-meta .markdown-reading-view .metadata-container {
|
||||||
display:none;
|
display:none;
|
||||||
|
269
.obsidian/plugins/obsidian-text-format/main.js
vendored
269
.obsidian/plugins/obsidian-text-format/main.js
vendored
File diff suppressed because one or more lines are too long
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"id": "obsidian-text-format",
|
"id": "obsidian-text-format",
|
||||||
"name": "Text Format",
|
"name": "Text Format",
|
||||||
"version": "3.0.5",
|
"version": "3.1.0",
|
||||||
"minAppVersion": "0.9.7",
|
"minAppVersion": "0.9.7",
|
||||||
"description": "Format text such as lowercase/uppercase/capitalize/titlecase, converting order/bullet list, removing redundant spaces/newline characters.",
|
"description": "Format text such as lowercase/uppercase/capitalize/titlecase, converting order/bullet list, removing redundant spaces/newline characters.",
|
||||||
"author": "Benature",
|
"author": "Benature",
|
||||||
|
@ -3,6 +3,9 @@
|
|||||||
margin-bottom: 0px;
|
margin-bottom: 0px;
|
||||||
padding-bottom: 0px;
|
padding-bottom: 0px;
|
||||||
}
|
}
|
||||||
|
.plugin-text-format H4{
|
||||||
|
opacity: 0.7;
|
||||||
|
}
|
||||||
.plugin-text-format .heading-description {
|
.plugin-text-format .heading-description {
|
||||||
padding-top: 0px;
|
padding-top: 0px;
|
||||||
color: var(--text-faint);
|
color: var(--text-faint);
|
||||||
|
@ -1,5 +1,17 @@
|
|||||||
{
|
{
|
||||||
"recentFiles": [
|
"recentFiles": [
|
||||||
|
{
|
||||||
|
"basename": "Кэширование",
|
||||||
|
"path": "_inbox/Кэширование.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "Старт с холодным кэшом",
|
||||||
|
"path": "_inbox/Старт с холодным кэшом.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "Перестройка кэша",
|
||||||
|
"path": "_inbox/Перестройка кэша.md"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"basename": "Home",
|
"basename": "Home",
|
||||||
"path": "Home.md"
|
"path": "Home.md"
|
||||||
@ -20,10 +32,6 @@
|
|||||||
"basename": "Вопросы работодателю",
|
"basename": "Вопросы работодателю",
|
||||||
"path": "notes/Собеседования/Вопросы работодателю.md"
|
"path": "notes/Собеседования/Вопросы работодателю.md"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"basename": "Кэширование",
|
|
||||||
"path": "_inbox/Кэширование.md"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"basename": "Улучшение производительности отдельного сервиса",
|
"basename": "Улучшение производительности отдельного сервиса",
|
||||||
"path": "_inbox/Улучшение производительности отдельного сервиса.md"
|
"path": "_inbox/Улучшение производительности отдельного сервиса.md"
|
||||||
@ -191,14 +199,6 @@
|
|||||||
{
|
{
|
||||||
"basename": "IN SQL",
|
"basename": "IN SQL",
|
||||||
"path": "_inbox/IN SQL.md"
|
"path": "_inbox/IN SQL.md"
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "00 SQL",
|
|
||||||
"path": "wiki/zero/00 SQL.md"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "Explain в PostgreSQL",
|
|
||||||
"path": "_inbox/Explain в PostgreSQL.md"
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"omittedPaths": [],
|
"omittedPaths": [],
|
||||||
|
@ -5,7 +5,6 @@ tags:
|
|||||||
date:
|
date:
|
||||||
- - 2024-05-24
|
- - 2024-05-24
|
||||||
zero-link:
|
zero-link:
|
||||||
- "[[00 Архитектура ПО]]"
|
|
||||||
- "[[00 HighLoad]]"
|
- "[[00 HighLoad]]"
|
||||||
parents:
|
parents:
|
||||||
linked:
|
linked:
|
||||||
@ -70,6 +69,7 @@ $key = md5(serialize($options))
|
|||||||
- [Last Frequently Used](Last%20Frequently%20Used.md)
|
- [Last Frequently Used](Last%20Frequently%20Used.md)
|
||||||
- [Adaptive Replacement Cache](Adaptive%20Replacement%20Cache.md)
|
- [Adaptive Replacement Cache](Adaptive%20Replacement%20Cache.md)
|
||||||
|
|
||||||
|
- [Перестройка кэша](Перестройка%20кэша.md)
|
||||||
## Cache miss
|
## Cache miss
|
||||||
По формуле можно расчитать как часто мы будем промахиваться мимо кэша
|
По формуле можно расчитать как часто мы будем промахиваться мимо кэша
|
||||||
|
|
||||||
@ -82,4 +82,6 @@ AverageTime = CacheAccessTime + DbAccessTime \* CacheMissRate
|
|||||||
Пусть
|
Пусть
|
||||||
- DbAccessTime = 100ms
|
- DbAccessTime = 100ms
|
||||||
- CacheAccessTime = 20ms
|
- CacheAccessTime = 20ms
|
||||||
- Тогда при CacheMissRate > 0.8 - кэш вреден.
|
- Тогда при CacheMissRate > 0.8 - кэш вреден.
|
||||||
|
## Дополнительные материалы
|
||||||
|
- [Старт с холодным кэшом](Старт%20с%20холодным%20кэшом.md)
|
17
_inbox/Перестройка кэша.md
Normal file
17
_inbox/Перестройка кэша.md
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
aliases:
|
||||||
|
tags:
|
||||||
|
- зрелость/🌱
|
||||||
|
date:
|
||||||
|
- - 2024-06-18
|
||||||
|
zero-link:
|
||||||
|
- "[[00 Разработка]]"
|
||||||
|
parents:
|
||||||
|
- "[[Кэширование]]"
|
||||||
|
linked:
|
||||||
|
---
|
||||||
|
При отсутствии ключа есть большой риск перегрузить базу. Для избегания проблем с перегрузкой базы необходимо ставить локи.
|
||||||
|
|
||||||
|
Получаем доступ к кэшу, его срок жизни истёк. Пытаемся заблокироваться по ключу.
|
||||||
|
- Не удалось получить блокировку: ждём снятия блокировки; не дождались: возвращаем старые данные кэша; дождались: выбираем значения ключа заново, возвращаем новые данные (построенный кэш другим процессом).
|
||||||
|
- Удалось получить блокировку: строим кэш самостоятельно.
|
18
_inbox/Старт с холодным кэшом.md
Normal file
18
_inbox/Старт с холодным кэшом.md
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
---
|
||||||
|
aliases:
|
||||||
|
tags:
|
||||||
|
- зрелость/🌱
|
||||||
|
date:
|
||||||
|
- - 2024-06-18
|
||||||
|
zero-link:
|
||||||
|
- "[[00 HighLoad]]"
|
||||||
|
parents:
|
||||||
|
- "[[Кэширование]]"
|
||||||
|
linked:
|
||||||
|
---
|
||||||
|
После аварии кеш, скорее всего будет инвалидирован. А в случае неперсистентных хранилищ кеша не будет точно при пропадании питания. Для некоторых систем подняться с непрогретым кешом сложная задача.
|
||||||
|
|
||||||
|
Общий рецепт:
|
||||||
|
- Заранее напишите скрипт прогрева кешей
|
||||||
|
- Возвращайте нагрузку плавно
|
||||||
|
- Помните о том, что нагрузку стоит уметь держать без кеша
|
Loading…
Reference in New Issue
Block a user