Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Крипто-анархисты
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
denisx
December 22, 2020
Programming
0
100
Крипто-анархисты
Про то, как разработчики любят греть устройства пользователей.
denisx
December 22, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
110
AtCoder Conference 2025
shindannin
0
1.1k
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
CSC307 Lecture 05
javiergs
PRO
0
500
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
460
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
230
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
3.9k
CSC307 Lecture 04
javiergs
PRO
0
660
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
650
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.2k
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.9k
Featured
See All Featured
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
62
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Automating Front-end Workflow
addyosmani
1371
200k
Paper Plane
katiecoart
PRO
0
46k
The untapped power of vector embeddings
frankvandijk
1
1.6k
Optimizing for Happiness
mojombo
379
71k
A better future with KSS
kneath
240
18k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
64
Transcript
Крипто-анархисты про то , как разработчики любят греть устройства пользователей
Форматирование не нужно Kb raw gz br \s \t \r
\n 178 26.7 19.6 string 130 25.2 19.1
Объединение файлов name / Kb raw br 1 11,1 1,4
2 13,8 2,7 3 102,3 15,0 sum 127,2 19,1 name / Kb raw br 1 + 2 + 3 127,2 18,3
UUID → Base 64 16 ^ 32 = 3,4 e38
340 миллиардов миллиардов миллиардов миллиардов комбинаций 64 ^ 21 = 8,5 e37 в 4 раза меньше вариантов, “всего” 85 млрд ^ 4 комбинаций UUID 4ef5ecde-b66f-4f46-b0c8-6b32f2b456b4 Base64 s83gdeAd34327Dwq2n3Ci
Компрессия хешей почти не работает name \ Kb словарь длина
строки raw br uuid 16 36 36 18,4 uuid 16 32 32 16,5 b64 64 21 21,5 16,0 id (1-7000) 10 1-4 4,8 1,9 id (16 ^ 4) 16 4 4,9 2,4 id (64 ^ 3) 64 3 3,9 2,5 нужно уменьшать сам хеш 1000 id
Geo .14 → .5 Координаты: 55.69450663197533, 37.66262491249896 точность 1,5 метра:
55.69450, 37.66262 (вход в здание) точность 15 метров: 55.6945, 37.6626 (само здание) 500 geo-points length raw br .14 18,7 7,1 .5 9,2 2,5
Получайте только нужные поля name, Kb raw br orig 235
34 short 89 19
Хеши необходимый длины name, Kb raw br orig 89 19
short 74 10
Алиасинг ключей name, Kb raw br orig 50,9 9,3 short
36,5 9,0
Уменьшение словаря name, Kb raw br orig 36,5 9,0 short
35,9 8,9
Изменение формата {"fiasId":"4ef5","ajsonId":1028,"cityNameRus ":"Шушары","path":"shushary","regionId":47} {"a":"4ef5","b":1028,"c":" Шушары","d":"shushary","e":47} ["4ef5",1028,"Шушары","shushary",47] 4ef5 1028 Шушары
shushary 47 name, Kb raw br orig 45,0 8,3 short key 32,6 8,0 array 20,0 7,5 csv (tsv) 16,8 7,3
Сжатие на лету !== сжатию для билда br level Kb
0 29,0 5 19,6 9 18,4 11 15,4 Raw 141 Kb Сжатие на лету обычно на 20-30% хуже
Спасибо, пока! Статья про стратегию уменьшения размера css- имён dev.to/denisx/reduce-bundle-size-via-one-letter-css-classname-hash-strategy-10g6
t.me/denisx | twitter.com/denisx