Goal: Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ°ΠΏΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ definition of done Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠ°ΠΏΠΎΠ²
ΠΡΠ΅Π΄ΠΏΠΎΡΡΠ»ΠΊΠΈ:
ΠΡΠ°ΠΏΡ
EDGE ΠΏΡΠΎΡΠΎΡΠΈΠΏ
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° EDGE ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ (zram, caddy, shared tls) 0. R&D ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠ΅ΡΠΈΡΡΡΡΠ΅Π³ΠΎ WS (Caddy, Traefik, Varnish, Nginx, OpenResty, Souin etc.)
- ΠΠΈΠ±ΠΊΠΎΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΊΠ΅ΡΠ°, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ origin, ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ cache keys (Π²Π°ΠΆΠ΅Π½ ΠΊΠ»ΡΡ Ρ Π³Π΅ΠΎ)
- Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ACME, shared storage Π΄Π»Ρ ΡΠ΅ΡΡΠΎΠ²
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° hot reload ΠΈ in-place replacement Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ/Π²ΡΠΊΠ»ΡΡΠ°ΡΡ ΡΠ΅ ΠΆΠ΅ Π»ΠΎΠ³ΠΈ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ)
- ΠΠ΅Π½ΡΠΌΠ°ΡΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΡ
- TTFB
- ΠΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΠ΅ΡΡΠΈΠΈ (Π² Ρ.Ρ. Π½Π° ΠΏΠ»ΠΎΡ ΠΈΡ ΠΊΠ°Π½Π°Π»Π°Ρ )
- Π‘ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠ΄Π°ΡΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΏΠΎΠ΄ Π½Π°ΡΠ΅ΠΉ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΎΠΉ
- ΠΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ cache hit/miss ratio
- Π£ΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΏΠΎΠ΄ Π² Π½Π°ΡΠΈΡ ΡΠ΅ΡΡ-ΠΊΠ΅ΠΉΡΠ°Ρ
- ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ WebSocket (Ρ NextCode ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΏΡΠΎΠ΄Π΅)
- ΠΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ (sysctl, etc.) ΡΠ΄ΡΠ° ΠΈ tcp-ΡΡΠ΅ΠΊΠ°, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΊΠ΅ΠΉΡΠΎΠ² (ΡΡΡΠ»ΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»Ρ)
- ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ Π΄Π΅Π΅ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΊΠ΅ΡΠΈΡΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°
- Π Π΅ΡΠΈΡΡ, ΠΊΠ°ΠΊ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌ/ΠΎΡΠ΄Π°Π΅ΠΌ ΡΡΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ
- ΠΠΏΠΈΡΠ°ΡΡ Dockerfile Π΄Π»Ρ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π° Π½Π°ΡΠ΅Π³ΠΎ ΠΊΠ΅ΡΠΈΡΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ compose Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΠ΄ΠΊΠ°ΡΠ°ΠΌΠΈ?)
- compose ΠΎΠΊ, Π½ΠΎ ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Ρ Π±Ρ ΡΠ΄Π΅Π»Π°Π» one image for all
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ CI Π΄Π»Ρ Π±ΠΈΠ»Π΄Π° Π³ΠΎΡΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠΌΠ΅ΠΉΠ΄ΠΆΠ° Π½Π° Github/Gitlab/Bitbucket
- Playbook/installer (bash, python, etc.) Ρ Π½Π°ΡΠΈΠΌ ΠΊΠ΅ΡΠΈΡΡΡΡΠΈΠΌ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ
- Π Π°ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π²Π°ΡΠΈΠ°Π½Ρ
curl <link> | sh -c -Π΄Π»Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ
- Π Π°ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π²Π°ΡΠΈΠ°Π½Ρ
Control Plane ΠΏΡΠΎΡΠΎΡΠΈΠΏ
- docker-compose, Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° loki ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³Π° ΠΈ ΡΠ΅ΡΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ Ρ edge ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
MVP ΡΠ΅ΡΡ
ΠΠΎΠΊΡΠΏΠΊΠ° ΡΠ΅Π°Π»ΡΠ½ΡΡ ΠΌΠΎΡΡΠ½ΠΎΡΡΠ΅ΠΉ Π² ΡΡ, ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΡΠ° Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π·Π΅ΡΠΊΠ°Π».
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π±ΠΈΠ·Π½Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»
ΠΡΠ°Π²ΠΈΠ»Π° Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°.
PostMVP: DNS
notes
To check: apache traffic server + apache traffic control (dns balancer included with dns sec) example
Timelines:
2025.08.10 - 2025.08.17: RD, test and measure different solutions 2025.08.18 - 2025.08.25: milestone 1, some working edge prototype