á¡á¬ážáá¯á¶ážá¡áá±á¬ááºáž!
áá»áœááºáá±á¬á·áºáá¬ááẠNikita áá«á áá»áœááºáá±á¬áºááá±á¬á· Cian á¡ááºáá»ááºáá®áá¬á¡ááœá²á·áá²á· á¡ááœá²á·áá±á«ááºážáá±á¬ááºáá«á áá¯áá¹ááá®ááœáẠáá»áœááºá¯ááºááá¬áááºáá
áºáá¯ááŸá¬ áá¯ááºáá¯ááºááŸá¯ááœáẠá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááŸáá·áºáááºáááºááá·áº á¡ááŒá
áºá¡áá»ááºáá»á¬ážááᯠáá¯áá¡áá áá»áŸá±á¬á·áá»áááºááŒá
áºáááºá
á¡á±á¬ááºááœáẠááœá±ážááœá±ážááá·áºá¡áá¬ááẠáá»áœááºá¯ááºááá¯á·á¡á¬áž áá»á¬ážá
áœá¬áá¬áá»ááºá
á±áá«áááºá á€áá±á¬ááºážáá«ážá áááºááœááºáá»ááºááŸá¬ á¡ááŒá¬ážáá°áá»á¬áž áá»áœááºá¯ááºááá¯á·áá¡ááŸá¬ážáá»á¬ážááᯠáááºááá²áá²ááŒááºážá០áá¬ááœááºááẠááá¯á·ááá¯áẠáááºážááá¯á·á á¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááᯠá¡áááºážáá¯á¶áž áá»áŸá±á¬á·áá»áááºááŒá
áºáááºá
áááá«ááºáž
ááá¯ážááŸá±ážááŸá±ážáá¯ááºážá Cian ááẠmonolith áá»á¬ážáá«áááºááŒá®áž microservices áá»á¬ážáá¡ááááºá¡ááŒáœááºáá»áŸáááŸááá±ážáá±á¬á¡áá«á á á¬áá»ááºááŸá¬ 3-5 ááá¯á á áºáá±ážááŒááºážááŒáá·áº á¡áááºážá¡ááŒá áºáá áºáá¯ááááŸáááá¯ááºááŸá¯ááᯠááá¯ááºážáá¬áá«áááºá
áá°ááá¯á·á á¡ááŒá± - á¡áá»áááºá¡ááŒá¬ááŒá®ážáááŒá±ááẠá¡á¬ážáá¯á¶ážá¡áááºááŒá±áá«ááẠ- ááááá¬ážáá«á á¡ááŒá áºá¡áá»ááºáá áºáá¯ááá¯á· áá°ááá²á·á¡ááœáẠáá°ááá¯á·á¡áá¯ááºá áááºáá±á¬ááºááŒá¬ááŒá¬ á¡áá¯ááºáááœááºááááºááá¯áᬠá¡á ááºážá¡áá±ážááœá±ááŸá¬ áá°ááœá±á áá¯á¶ážááŒááºáááºá á¡ááºáá»ááºáá®áá¬á¡ááœá²á·áá áºááœá²á·ááẠá¡ááŒá áºá¡áá»ááºááᯠá á¯á¶á ááºážá á áºáá±ážáá¬ááœáẠá¡ááŒá²áá«áááºáá±áá²á·áááºá á á¯á¶á ááºážá á áºáá±ážááŸá¯ááŒá®ážááœá¬ážáá±á¬á¡áá«ááœáẠáááºážááá¯á·ááẠáá±á¬áááºáá¯á¶á á¶ááŒáá·áº á¡á®ážáá±ážááºááŒáá·áº á¡á á®áááºáá¶á á¬áá áºáá»áá¯ážááᯠáá±ážáá¬ážáá²á·áááº- ááŒá áºáá»ááºáá²á·áá¯á¶á á¡áá»áááºáááºáá»áŸááŒá¬á¡á±á¬ááºá ááá¯á¡áá»áááºááœáẠáá»áœááºá¯ááºááá¯á·ááŒá¯áá¯ááºáá²á·ááááºážá á¡áá¬áááºááœáẠáá»áœááºá¯ááºááá¯á·áá¯ááºáá±á¬ááºáááá·áºá¡áá¬áá»á¬ážááᯠáá±ážáá¬ážáá²á·áááºá
ááá¯ááºá á¡ááá á á¬áá»ááºááŸá¬áá»á¬áž ááá¯á·ááá¯áẠáá»áœááºá¯ááºááá¯á·ááẠá¡á±á¬ááºááŒá±ááᯠááááœá¬ážááŒá±á¬ááºáž áá»áœááºá¯ááºááá¯á· áá¬ážáááºáá¯á¶
á¡ááŸá¬ážá áŠážá
á¬ážáá±ážááᯠáá
áºáááºážáááºážááŒáá·áº áá¬ážáááºááá¯ááºáááºá áá¯ááºáááºážáá¯ááºáá±á¬ááºááá¯ááºá
áœááºážá¡ááœáẠá¡áá±ážááŒá®ážáá¯á¶áž áááºááá¯ááºá
á¬áá»ááºááŸá¬áá»á¬ážááᯠáá»áœááºá¯ááºááá¯á· ááŸá¬ááœá±áá±á¬áºáá¯ááºáá¬ážáá«áááºá áááºážááá¯á·ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááŒáá·áº á¡á±á¬ááºááŒááºáá±á¬/áá¡á±á¬ááºááŒááºáá±á¬ áá±á¬ááºážááá¯áá»ááºáá»á¬ážááŸáá·áº á¡áá»áááºáá¯ááºááœá¬ážááá·áºá¡áá±á¡ááœááºááᯠáá±ááœááºáá«áááºá á€áááºááŸá¬ áá»áœááºá¯ááºááá¯á·á á¡áá¯ááºáá»áááºááᯠááá¯ááºážáá¬áááºážááŒá
áºáááºá
áááºááááºáá±á¬ááºááŸá¯á¡ááœáẠáá¬áááºááŸááá±á¬ áááºááá¯ááºá á¡ááœááºá¡áá±ážááŒá®ážáá±á¬ á¡ááá¯ááºážáá»á¬ážá áœá¬ááŸáááẠ- ááŒá±á¬áºááŒá¬áá»á¬ážááᯠááŸá¬ááœá±ááŒááºážááŸáá·áº áááºááœááºážááŒááºážááá¯á·ááᯠááœá±á·ááŸááá²á·áááºáá¯ááá¯ááŒáá«á áá¯á·á áá»ááºááœááºáá±á¬áá±á¬ááºážááá¯ááŸá¯á¡áá±á¡ááœááºááẠ1% áááºáá»á±á¬áºááœááºáá«áá á€áááºááŸá¬ á¡áá±ážááŒá®ážáá±á¬ááŒá áºáááºáá áºáá¯ááŒá áºáááºá 15 áááá áºá¡ááœááºáž error rate 0,1% áá»á±á¬áºááœááºáá±áá«áá áááºážááẠá¡áá±ážááŒá®ážáá±á¬ ááŒá áºáááºáá áºáá¯áá¯áááºáž áá°ááá«áááºá á€á á¶ááŸá¯ááºážáá»á¬ážááẠá¡ááŒá áºá¡áá»ááºá¡áá»á¬ážá á¯ááᯠá¡áá»á¯á¶ážáááºáááºá áá»ááºá¡áá¬áá»á¬ážááẠá€áá±á¬ááºážáá«ážá áá±á¬ááºáá»á±á¬áºááœááºáá«áááºá
ááááºáááºážá¡áá±á¬ááºážáá¯á¶ážááŒá áºáááºáá»á¬áž Cian
áá«ááŒá±á¬áá·áº á¡ááŒá áºá¡áá»ááºáá áºáᯠááŒá áºáá²á·áááºááá¯áá²á·á¡áá»ááºááᯠáá±áá»á¬áá¯á¶ážááŒááºááá¯á· áááºáá°áá²á·áá«áááºá
ááá¯á¡ááŒá áºá¡áá»ááºááá¯ááºážááᯠá¡áá±ážá áááºáá±á¬áºááŒááŒá®áž Jira áá¬ááºáááºážááœáẠáááºáááºáá±áá«áááºá á áá¬ážáá ááºá á€á¡ááœáẠáá»áœááºá¯ááºááá¯á·ááẠFAIL áá¯áá±á«áºáá±á¬ áá®ážááŒá¬ážááá±á¬áá»ááºáá áºáá¯ááᯠá áááºáá²á·ááẠ- áááºážááœááºáᬠáá¬ááºáááºážáá»á¬ážááᯠáááºáá®ážááá¯ááºáááºá
ááœááºáá²á·ááá·áºááŸá áºá¡áááºážáááºá¡ááœááºáž áá»ááŸá¯á¶ážááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááᯠá á¯áá±á¬ááºážáá¬ážáááºááá¯áá»áŸáẠáá±á«ááºážáá±á¬ááºáá»á¬ážáááº-
- mssql áááºá ááºááŒá áºáááºáá»á¬áž;
- ááŒááºá á¡ááŒá±á¬ááºážááá¬ážáá»á¬ážááŒá±á¬áá·áº ááŒá áºáá±á«áºáá¬áá±á¬ á¡ááŒá áºá¡áá»ááºáá»á¬ážá
- admin á¡ááŸá¬ážáá»á¬ážá
á á®áá¶ááá·áºááœá²áá°áá»á¬ážá á¡ááŸá¬ážáá»á¬ážááŸáá·áº á¡ááŒá¬ážáá±á¬ á áááºáááºá á¬ážááœáẠáá»áá¯á·ááœááºážáá»ááºá¡áá»áá¯á·ááᯠá¡áá±ážá ááẠáá±á·áá¬ááŒáá·áºááŒáá«á áá¯á·á
ááá¹á ááá±áᬠ- "á¡áá¬áá»á¬ážááᯠDNS ááœáẠá áá áºááá»áá¬ážááŸáááŒááºáž"
á¡ááºá¹áá«áá±á·á áá¯ááºááá¯ááºážáááºáá²á·áááºá DNS á¡á á¯á¡áá±ážááœáẠááŸá¬áá°ááŸá¯ááᯠááŒááºáááºááá°ááẠáá¯á¶ážááŒááºáá²á·áááºá
DNS ááŸááœá²á áá¬ááŸáááŸááá±á¬ á€á¡ááœáẠáá¯á¶ážá áá®ážááŒá¬ážáá¬áá¬áá»á¬ážááᯠááœá²áá±áá±ážáᬠá¡ááœááºáž DNS áá¬áá¬áá»á¬ážááᯠbind á០powerdns ááá¯á· ááœáŸá²ááŒá±á¬ááºážáá±ážááá¯áá«áááºá
áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á DCs áá»á¬ážááááºáá±áá¬áá áºáá¯á á®ááœáẠDNS áá¬áá¬áá áºáá¯áá¬ážááŸááá²á·ááŒá®ážá á¡ááá¯ááºá¡ááá·áºááœáẠáá¯ááºáá»á¬ážááᯠbind á០powerdns ááá¯á·ááœáŸá±á·áᬠá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶á¡á¬áž áá¬áá¬á¡áá áºáá»á¬ážááá¯á·ááŒá±á¬ááºážááẠáá±á¬ááºáá¬áá²á·áááºá
á¡ááŒá±á¬ááºážá¡ááœáŸá±á·ááŒá¬ážááœááºá local caching ááœáẠáááºááŸááºáá¬ážáá±á¬ áá¬áá¬áá»á¬ážá¡á¬ážáá¯á¶ážááᯠáá¬áá¬áá»á¬ážá¡á¬ážáá¯á¶ážááœáẠáá»áááºááœá²áá¬ážááŒá®áž á
ááá·áºáá®áá¬á
áááºááŸá áá±áá¬á
ááºáá¬ááœááºááŸáááá·áº áá
áºáá¯áᬠáá»ááºááŸááá±á¬á·áááºá ဠDC ááẠáá»áœááºá¯ááºááá¯á·á¡ááœáẠá¡ááááºážá¡á
á±á¬ááºážáááŸááᯠáááŠážááœáẠááŒá±áá¬áá²á·áá±á¬áºáááºáž áá¯ááºáááẠááŸá¯á¶ážáááá·áºááŸá¯áá
áºáᯠááŒá
áºáá¬áá²á·áááºá
áá±á¬áºá
ááá¯ááŸáá·áº á
ááá·áºáá®áá¬á
áááºááŒá¬ážááŸá áá°ážááŒá±á¬ááºážááᯠááŒá±á¬ááºážááœáŸá±á·áá±áá¬áá»áá¬ážáá»áááºá¡ááœááºáž ááŒá¯ááºáá»áá²á·áááºá áá»áœááºá¯ááºááá¯á·ááẠDNS áááŸááá² áá«ážáááá
áºááŒá¬á¡á±á¬áẠáá¬ážáá²á·áááŒá®áž ááŒá¿áá¬ááᯠá¡áááºááŸááºá ááŒá±ááŸááºážááá¯ááºáá±á¬á¡áá«ááœáẠááŒááºáááºáá¬áá²á·áááºá
áá±á¬ááºáá»ááº:
á¡áááºá áá»áœááºá¯ááºááá¯á·ááẠá¡áá¯ááºá¡ááœáẠááŒááºáááºáá±á ááºá¡ááœááºáž ááŒááºáá¡áá»ááºáá»á¬áž áá»á áºáá»á°ááŸá¯áá¬ážáá«áá ááá¯á¡áá« áááºážááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á¡ááœáẠááŒááºáááºáá±ááá·áºá á¬áááºážááœáẠáá«áááºáá±áá«áááºá ááᯠáá»áœááºá¯ááºááá¯á·ááẠá¡á áááºá¡ááá¯ááºážá¡á¬ážáá¯á¶ážááᯠn-2 ááᯠááááºážáááºážáá¬ážááŒá±á¬ááºáž áá±áá»á¬á á±ááẠáá»áœááºá¯ááºááá¯á· ááŒáá¯ážá á¬ážáá±ááŒá®áž á¡áá¯ááºá¡ááœááºážááœáẠá€á¡ááá·áºááᯠn-1 ááá¯á· áá»áŸá±á¬á·áá»ááá¯ááºáááºá
- áá¯ááºáá±á¬ááºáá»ááºá¡á á®á¡á á¥áºáá áºáá¯áá±ážááœá²ááá·áºá¡áá«á áááºáá±á¬ááºááŸá¯áá¡á±á¬ááºááŒááºááá¯ááºááá·áºá¡áá»ááºáá»á¬ážááᯠá¡ááŸááºá¡áá¬ážááŒá¯ááŒá®áž á¡áá¬á¡á¬ážáá¯á¶áž "ááá¯ážááŸááá¯ážááœá¬ážáááº" ááᯠááŒáá¯áááºá ááºážá á¬ážáá«á
- ááœá²ááŒá¬ážáá±á¬ áááá®áááºáááºáá±áá¬áá»á¬áž/áá±áá¬á ááºáá¬/áááºááœááºáá»á¬áž/ááá¯ááºáá»á¬áž/ááá·áºááœááºážááŸá¯áá»á¬ážááŒáá·áº á¡ááœááºáž DNS áá¬áá¬áá»á¬ážááᯠááŒáá·áºáá±áá«á
- áá¬áá¬áá áºáá¯á á®ááœááºá áááºá DNS áá¬áá¬áá»á¬ážááá¯á· áá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠááŒááºáááºááœáŸááºážáá±ážááá·áº áá±áááœááºáž áááºááŸáº DNS áá¬áá¬ááᯠááá·áºááœááºážáá«á áááºážááẠááááŸáááá¯ááºáá«áá áááºážááẠáááºááŸáºá០áá¯á¶á·ááŒááºáááºááŒá áºáááºá
á áá¯áá¹ááá±áᬠ- "á¡áá¬áá»á¬ážááᯠNginx ááœáẠá áá áºááá»áá¬ážááŸáááŒááºáž"
áá±á¬ááºážáá±á¬áá±á·ááœááºá áá»áœááºá¯ááºááá¯á·áá¡ááœá²á·ááẠ"áá»áœááºá¯ááºááá¯á·áá€á¡áá¯á¶á¡áá±á¬ááºááŸááááº" áá¯áá¯á¶ážááŒááºáá²á·ááŒá®áž nginx configs ááŒááºáááºááŒááºáááºááŒááºážáá¯ááºáááºážá ááºá áááºáá²á·áááºá á¡ááá áááºááŸááºážáá»ááºááŸá¬ configs áá»á¬ážááᯠáááºááá¯ááºááœá²á·á ááºážáá¯á¶ááá¯á· áá°áá±á¬ááºáá¬áááºááŒá áºáááºá ááááºáá á¡áá¬á¡á¬ážáá¯á¶ážááẠ"áááá¯ááºážááœááºáááºáááº" ááŸáááŒá®áž áááºááá·áºáá¯áá¹áááá»áŸááá¬ážáá«á ááᯠserver_name áá áºáá¯á á®ááᯠáá¬áááºáá°ááá¯ááºáá áºáá¯ááá¯á· ááœáŸá±á·ááŒá®áž configs á¡á¬ážáá¯á¶ážááᯠfolders áá»á¬ážááá¯á· ááŒáá·áºáá±áá¬ážáááºá á áá¬ážáá ááºá config ááœáẠ253949 ááá¯ááºážáá»á¬áž ááá¯á·ááá¯áẠ7836520 á á¬áá¯á¶ážáá»á¬ážáá«ááŸáááŒá®áž 7 megabytes áá®ážáá«ážááŸááááºá ááœá²á·á ááºážáá¯á¶á ááááºáááºážá¡ááá·áº
Nginx ááœá²á·á ááºážáá¯á¶
âââ access
â âââ allow.list
...
â âââ whitelist.conf
âââ geobase
â âââ exclude.conf
...
â âââ geo_ip_to_region_id.conf
âââ geodb
â âââ GeoIP.dat
â âââ GeoIP2-Country.mmdb
â âââ GeoLiteCity.dat
âââ inc
â âââ error.inc
...
â âââ proxy.inc
âââ lists.d
â âââ bot.conf
...
â âââ dynamic
â âââ geo.conf
âââ lua
â âââ cookie.lua
â âââ log
â â âââ log.lua
â âââ logics
â â âââ include.lua
â â âââ ...
â â âââ utils.lua
â âââ prom
â âââ stats.lua
â âââ stats_prometheus.lua
âââ map.d
â âââ access.conf
â âââ ..
â âââ zones.conf
âââ nginx.conf
âââ robots.txt
âââ server.d
â âââ cian.ru
â â âââ cian.ru.conf
â â âââ ...
â â âââ my.cian.ru.conf
âââ service.d
â âââ ...
â âââ status.conf
âââ upstream.d
âââ cian-mcs.conf
âââ ...
âââ wafserver.conf
áááºážááẠáá»á¬ážá áœá¬ááá¯áá±á¬ááºážáá¬áááºá ááá¯á·áá±á¬áº configs á¡áááºááŒá±á¬ááºážááŒááºážááŸáá·áº ááŒáá·áºáá±ááŒááºážáá¯ááºáááºážá ááºááœááºá áááºážááá¯á·áá²á០á¡áá»áá¯á·ááẠááŸá¬ážááœááºážáá±á¬ extension ááŸáááŒá®áž *.conf ááœáŸááºááŒá¬ážáá»ááºááœáẠááá«áááºáá«á ááááºá¡áá±ááŒáá·áº á¡áá»áá¯á·áá±á¬ host áá»á¬áž ááááŸáááá¯ááºáá±á¬á·áá² 301 ááᯠáááºáá á¬áá»ááºááŸá¬ááá¯á· ááŒááºááá¯á·áá±ážáá«áááºá áá¯á¶á·ááŒááºáá¯ááºááẠ5xx/4xx ááá¯ááºáá±á¬ááŒá±á¬áá·áºá áááºážááᯠáá»ááºáá»ááºážáááááá¬ážáááá±á¬áºáááºáž áá¶áááºááá¯ááºážáá¬ááŒá áºáááºá ááá¯á·áá±á¬áẠá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ á¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠá á áºáá±ážááẠá á¬áá±ážá ááºážáááºááŸá¯áá»á¬áž á áááºáá²á·áááºá
áá±á¬ááºáá»ááº:
- áááºáááœá²á·á ááºážáá¯á¶áá»á¬ážááᯠááŸááºáááºá áœá¬áááºáá±á¬ááºáá« (nginx áá»áŸáá¬ááá¯ááº) ááŸáá·áº ááá±á¬áá»ááºáá¡á á±á¬ááá¯ááºážá¡ááá·áºááœáẠááœá²á·á ááºážáá¯á¶ááᯠá ááºážá á¬ážáá«á á€áááºážááŒáá·áº áááºááẠáááºážááá¯á·á¡á¬áž á¡áááºážá¡á¬áž ááá¯ááá¯áá¬ážáááºááá¯ááºá á±áááºááŒá áºááŒá®áž áááºážááẠTTM ááᯠáá»áŸá±á¬á·áá»áááºááŒá áºáááºá
- á¡áá»áá¯á·áá±á¬ á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠ á¡á áááºá¡ááá¯ááºážáá»á¬ážá¡ááœáẠá ááºážáááºááŸá¯áá»á¬áž áá±ážáá¬ážáá«á á¥ááá¬- áá±á¬á·áá¬áá¬_á¡áááºáá»á¬ážá¡á¬ážáá¯á¶ážááẠááŸááºáááºáá±á¬á¡ááŒá±á¡áá± + áá¯á¶á·ááŒááºááŸá¯ááá¯ááºáááºááá¯áá±ážááŒá±á¬ááºáž á á áºáá±ážááŒááºážá á¡á áááºá¡ááá¯ááºážá á¡ááŒá±áá¶áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá á áºáá±ážááá·áº script á¡áááºážáááºáá»áŸáᬠáááºáá²ááœáẠááŸááá±áááºááŒá áºááŒá®ážá áá¶ááẠ3 áá¬áá®ááœáẠá¡ááŒá¬ážáááºááá·áºá¡áá¬áá»á¬ážááᯠá á áºáá±ážááẠááá¯á¡ááºáááºááᯠá¡áá°ážá¡áá°ážáááŸááºááá á±áááºá¡ááœáẠáá¯á¶áá±á¬ááºáááºááŒá áºáááºá
áááááá±áᬠ- "Cassandra ááœáẠáá¯ááºáááẠáá±áá¬ááœááºáá¯ááºááœá¬ážáááº"
áá±áá¬áá»á¬ážááẠáááŒááºážááŒááºáž ááŒá®ážááœá¬ážáá¬ááŒá®áž Cassandra cluster ááœáẠááŒá®ážáá¬ážáá±á¬ casespace áá»á¬ážááᯠááŒá¯ááŒááºááŒááºáž áá¡á±á¬ááºááŒááºáá®á¡áá á¡áá¬á¡á¬ážáá¯á¶áž á¡áááºááŒá±ááœá¬ážáá«áááºá
áá¯ááºááá¯ááºážáááºáá±á¬áá áºáá±á·ááœáẠá¡á á¯á¡áá±ážááẠááœáŸá±ááá¯á¶áá®ážá¡ááŒá áºááá¯á· ááŒá±á¬ááºážáá²áá¯áá®ážáá«ážááŒá áºáááºá
- á¡á á¯á¡áá±ážááœáẠáá±áá¬á á¯á á¯áá±á«ááºážá 20% ááá·áº áá»ááºáá±áá«áááºá
- á¡áááºážááá·áºáá»á¬ážááœáẠáá±áá¬ááœááºáááŸáááŒááºážááŒá±á¬áá·áº node áá áºáá¯ááᯠáá±á«ááºážááá·áºááŒá®ážáá±á¬áẠááá·áºááŸááºážááŸá¯ áá»ááºááœá¬ážáá±á¬ááŒá±á¬áá·áº node áá»á¬ážááᯠá¡ááŒáá·áºá¡áááá·áºááẠáááŒá áºááá¯ááºáá«á
- ááŒáááºá áẠá¡áá¯ááºááá¯ááºáá±á¬ááŒá±á¬áá·áº áá¯ááºáá¯ááºá áœááºážá¡á¬áž áááŒááºážááŒááºáž áá»áááºážáá¬áááºá
- á¡á á¯á¡áá±ážááẠá¡áá±ážáá±á«áºáá¯ááºááœáẠááŸááá±áááºá
ááœááºááẠ- áá»áœááºá¯ááºááá¯á·ááẠááá·áºááŸááºážáá±ážááá¯ááºáá² áá±á¬ááºááẠnode 5 áá¯ááᯠáá±á«ááºážááá·áºáá²á·ááŒá®ážá ááá¯á·áá±á¬áẠáááºážááá¯á·ááᯠá¡á
á¯á¡áá±ážá០á
áá
áºááá» áááºááŸá¬ážááŒá®áž áá±áá¬ááœááºáááŸááá±á¬ áá¯ááºáá»á¬ážáá²á·ááá¯á· áááºážááá¯á·ááᯠááŒááºáááºááá·áºááœááºážáá²á·áááºá áá«ááá¯á·ááá¯áá»ááºáá¬ááẠá¡áá»áááºá¡áá»á¬ážááŒá®áž ááá¯áá¯ááºáááºá á¡á
á¯á¡áá±ážá áá
áºá
áááºáá
áºááá¯ááºáž ááá¯á·ááá¯áẠá¡ááŒáá·áºá¡á
á¯á¶ ááááŸáááá¯ááºááŒááºáž ááŒá
áºááá¯ááºááŒá±ááŸááááºá
áá±á¬ááºáá»ááº:
- cassandra áá¬áá¬áá»á¬ážá¡á¬ážáá¯á¶ážááœááºá partition áá áºáá¯á á®ááŸá space á 60% áááºáááá¯á á±ááá«á
- áááºážááá¯á·ááᯠ50% cpu áááºáááá¯á á±ááá«á
- á áœááºážáááºá¡á á®á¡á á¥áºáá±ážááœá²ááŒááºážá¡ááŒá±á¬ááºáž áááºááá±á·ááá·áºáá² áááºážáá¡áá±ážá áááºá¡áá»ááºáá»á¬ážáá±á«áºá¡ááŒá±áá¶á á¡á áááºá¡ááá¯ááºážáá áºáá¯á á®á¡ááœáẠáááºážááá¯á ááºážá á¬ážááẠááá¯á¡ááºáá«áááºá
- á¡á á¯á¡áá±ážááœáẠáá»á¬ážáá±áá±á ááá¯áá±á¬ááºážáá±ááŒá áºáááºá áá±áá¬ááá¬áá¡áááºážáááºáá«ááŸááá±á¬ áá¬áá¬áá»á¬ážááẠáááºááá¯ááŒááºááŒá®áž ááá¯ááá¯á·áá±á¬á¡á á¯á¡áá±ážááᯠááŒááºáááºá¡áááºááœááºážááẠááá¯ááá¯ááœááºáá°áááºá
áá¯ááááá±áᬠ- "áá±á¬ááºá á áºáááºáá®áž-áááºááá¯áž ááá¯ááŸá±á¬ááºááŸá¯á០áá±áá¬áá»á¬áž áá»á±á¬ááºááœááºááœá¬ážáááº"
áááºáá±á¬ááºááŸá¯ááŸá¬ááœá±ááœá±á·ááŸáááŸá¯á¡ááœááºá áá»áœááºá¯ááºááá¯á·ááẠá¡áá»á¬ážá¡ááŒá¬ážáá²á·ááá¯á·ááẠáá±á¬ááºá á áºáááºááᯠá¡áá¯á¶ážááŒá¯áá«áááºá ááá¯á·áá±á¬áº monolith á á áááºážááŒá¬áá±á¬áẠá¡ááŒááºá¡áááºá¡ááœáẠáááºážá áá±á¬á·áááºááá¯ážááá¯áááºáž á¡áá¯á¶ážááŒá¯áá«áááºá áááºážááẠááŒáá·áºáá»ááºá ááºá¡ááœááºáž áá±áá¬áá»á¬ážááᯠááŒá±á¬ááºážáá²áá±ážááá·áº áááºááŒáœááŒá®áž áááŸá¯ááºááŸá¬ážááá¯ááºáá±á¬ á¡áááºá á®ážááŒá±á¬ááºážáá»á¬ážá¡ááŒá±á¬ááºáž á¡áá»ááºá¡áááºáá»á¬ážááᯠááááºážáááºážáá¬ážáááºá á€áááºááœááºáá»ááºá¡ááœáẠKV ááŸáá·áº á¡ááŒááºá¡ááŸááºá¡áá»áá¯ážáááºáá±á¬ááºáá±á¬ ááŒáá·áºáá»ááºááŒááºážáááºáá±á¬ááºááŸá¯ááᯠáá±ážáá¬ážáá²á·áááºá áá áºáá»áááºáá»áááºááœáẠKV ááŸáá±áá¬áá»á¬ážáá»á±á¬ááºááœááºááœá¬ážáá²á·áááºá ááŸááºáá¬ááºá០ááŒááºáááºááá°áá±á¬áºáááºáž á¡ááŸá¬ážá¡ááœááºážáá»á¬ážá áœá¬ááŸááááºá ááááºá¡áá±ááŒáá·áº á¡ááºáá¯ááºáá¯ááºáá±á ááºá¡ááœááºážá á¡áááºááá¯ááºážááŸá áááºá¡á¬áž ááá®ááᬠááŒáá·áºáá±áá²á·ááŒá®áž CPU ááœáẠáá±á¬ááºááœááºá០áááºááá¯áá±ááŒááºážááŒá±á¬áá·áº 502 á¡ááŸá¬ážá¡ááœááºážáá»á¬ážá áœá¬ááᯠáá»áœááºá¯ááºááá¯á· áááŸááá²á·áá«áááºá ááááºá¡áá±ááŒáá·áº áá»áœááºá¯ááºááá¯á·ááẠáá±á¬ááºá á áºááẠKV á០ááá¯á·á áºááááºá áºááá¯á· ááŒá±á¬ááºážááœáŸá±á·áá²á·ááŒá®áž áááºážááá¯á·ááᯠáááºááŸá¬ážááẠá¡ááœááºááœááºáá°áá±á¬á·áááºááá¯ááºáá±á
áá±á¬ááºáá»ááº:
- ááœáá·áºááŒá¯áá»ááºáááŸááá² áááºáá±á¬ááºááŸá¯áá»á¬ážááẠááá¯ááºááááºáááºááŸá¯á¡ááœáẠá¡áá±ážááŒá®ážáá±á¬ áá±áá¬ááá«áááºááá·áºáá«á á¥ááá¬á¡á¬ážááŒáá·áºá ááá·áºááœáẠES ááœáẠááœáá·áºááŒá¯áá»ááºáááŸááá«áá áááá¯á¡ááºááá·áºáá±áá¬ááá¯ááºážá០ááœááºáááºá¡ááá·áºááœáẠáááºáá±á¬ááºááœáá·áºááᯠááŒááºážáááºáááºá ááá¯á¡ááºááá·áºá¡áá¬áá»á¬ážááá¯áᬠáá¬ážáá²á·áᬠaction.destructive_requires_name: true áᯠáááºááŸááºááŒááºážááẠááá¯áá±á¬ááºážáááºááŒá áºáááºá
- áááºá á¡áááºááááºážááŒááºážááŸáá·áº ááŒááºáááºááá°ááŒááºáž ááá¹ááá¬ážááᯠááŒáá¯áááºáá±á·áá»áá·áºáá«á á¥ááá¬á¡á¬ážááŒáá·áºá á¡áááºáá°ážááŒá®áž ááŒááºáááºááá°ááá¯ááºáá±á¬ áá¬ááºááœáŸááºážáá áºáᯠ(á¥ááᬠpython ááœááº) ááŒáá¯áááºááŒá¯áá¯ááºáá«á
ááááá±áᬠ- "ááá¹ááááẠUnobvious"
áá áºáá»áááºáá»áááºááœááºá áá±á¬ááºááœááºááœáẠáá¬áᬠ10+ ááŸáááá·áºááá á¹á áá»á¬ážááœáẠnginx á¡áááºáá±á á®ážááŒá±á¬ááºážáá»á¬ážáá±á«áºááœáẠáááºááá®ááᬠááŒáá·áºááŒá°ážááŸá¯ááᯠáá»áœááºá¯ááºááá¯á·áááááŒá¯áááá²á·áááºá round-robin ááẠ1st á០áá±á¬ááºáá¯á¶ážáá±á á®ážááŒá±á¬ááºážá¡áá áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠá¡á á®á¡á á¥áºáá±ážááá¯á·ááŒá®áž nginx ááŒááºáááºá áááºááŸá¯áá áºáá¯á á®ááẠá¡á ááŸááŒááºá áá±á¬ááŒá±á¬áá·áºá ááááá±á á®ážááŒá±á¬ááºážáá»á¬ážááẠá¡ááŒá¬ážá¡áá¬áá»á¬ážááẠáá±á¬ááºážááá¯ááŸá¯áá»á¬áž ááá¯ááá¯áááŸááá±á·ááŸááá«áááºá ááááºá¡áá±ááŒáá·áº áááºážááá¯á·ááẠááá¯ááá¯ááŸá±ážááœá±ážááŒá®áž áááºááá¯ááºáá áºáá¯áá¯á¶ážááᯠááááá¯ááºá á±áá²á·áááºá áá¬ááºá¡ááœá¬ážá¡áᬠáá»á¬ážááŒá¬ážáá¬áááºááŸáá·áºá¡áá»áŸ áááºážááẠááá¯ááá¯áááá¬áá¬áááºá áá»áááºážááœáá·áºááẠnginx ááᯠá¡ááá·áºááŒáŸáá·áºáááºááŒááºážááŸá¬ á¡áá¯ááºáááŒá áºáá²á·áá« - áá»áœááºá¯ááºááá¯á·ááẠáá¬ážááŸááºáž 1.15 (ááá¯á¡áá»áááºááœáẠááá±á«áºáá±ážáá±á¬ lua áá¯ááºáá»á¬ážá áœá¬ááᯠááŒááºáááºáá¯ááºáá±á¬ááºááẠááá¯á¡ááºáá«áááºá áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á nginx 1.14.2 ááᯠpatch áá¯ááºáᬠáááºážááœáẠáá»áááºážáá¶á·ááá¯ážááŸá¯ááᯠááááºáááºáá±ážáá²á·áááºá áá«á ááŒá¿áá¬ááᯠááŒá±ááŸááºážáá±ážáááºá á€áá»áá¯á·ááœááºážáá»ááºááẠâááá¹áááááºáááŸááºážáááºážáá±á¬â á¡áá»áá¯ážá¡á á¬ážááᯠáááŸááááºá
áá±á¬ááºáá»ááº:
áá®ááá¯ážáá±á¬ááºááᯠá á°ážá ááºážáá±á·áá¬ááᬠá¡áááºážá áááºáááºá á¬ážá áá¬áá±á¬ááºážááŒá®áž á áááºááŸá¯ááºááŸá¬ážá áá¬áá±á¬ááºážáá«áááºá)
- ááá¯ááá¯á·áá±á¬ á¡áááºá¡áá»áá»á¬ážááᯠáá»ááºááŒááºá áœá¬ ááœá±á·ááŸáááá¯ááºááẠáá°áá®áá±ážááá¯ááºááẠáááºá á á±á¬áá·áºááŒáá·áºááŸá¯ááᯠá á¯á ááºážáá«á á¥ááá¬á¡á¬ážááŒáá·áºá áááºááẠá¡áááºá á®ážááŒá±á¬ááºážáá áºáá¯á á®á áá±á¬ááºáá¶áá áºáá¯á á®ááŸá rps ááᯠá á±á¬áá·áºááŒáá·áºáááºá nginx ááŸá¯áá±á¬áá·áºá០áááºážááá¯á·á áá¯á¶á·ááŒááºáá»áááºááᯠá á±á¬áá·áºááŒáá·áºááẠELK ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá á€ááá á¹á ááœááºá áááºážááẠáá»áœááºá¯ááºááá¯á·á¡á¬áž ááŒá¿áá¬ááᯠáá±á¬áºáá¯ááºááẠáá°áá®áá±ážáá²á·áááºá
ááááºá¡áá±ááŒáá·áºá áááºáá¯ááºáá±á¬ááºáá±ááá·áºá¡áá¬á¡áá±á«áº ááá¯ááá¯áááá»áá±á¬áá»ááºážáááºááŸá¯ááŒáá·áº áá»ááŸá¯á¶ážááŸá¯á¡áá»á¬ážá
á¯ááᯠááŸá±á¬ááºááŸá¬ážááá¯ááºáááºááŒá
áºáááºá Murphy á á¥ááá± ááᯠáá»áœááºá¯ááºááá¯á· á¡ááŒá² áááááá±áááẠá áááºá¡áá¬áááᯠááŸá¬ážááœá¬ážáááá·áºáááºá áááºážááᯠá¡ááŒá±áá¶á á¡á
áááºá¡ááá¯ááºážáá»á¬ážááᯠáááºáá±á¬ááºáá«á
source: www.habr.com