á áááºáááºáá±á¬ááºáá° á¡áá»á¬ážá¡ááŒá¬ážááẠáááºážááᯠááŒááºáááºážáá²á·ááŒáááº- áá¯á¶ážá áœá²áá°á¡áá áºáá»á¬áž áá±á·ááá¯ááºáž ááŸááºáá¯á¶áááºááŒááŒá®áž ááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážá¡ááœá²á·ááẠáááºáá±á¬ááºááŸá¯ áááºáááºáááºáááºááẠáá¯ááºážáááºáá±ááááºá
ááŸáááá¯á·áá±á¬ááºážáá¬á ááŒá¿áá¬áá áºáá¯áá«á áá«áá±ááá·áº áááºá¡ááºááá®áá±ážááŸááºážááᯠáááºá¡áá¬ááá±á០áá¯á¶ážá áœá²áá° áá±á¬ááºáá±á«ááºážáá»á¬ážá áœá¬á¡áá áááºááá¯ááá¯áá áá¯áẠááá¯ááºážáá¬ááááºááá¯áá¬áá²á· áááºáááºááŒá®áž ááŸááºážáááºážáá²á· á¡áá»ááºá¡áááºáá±ážááœá± ááŸááá±áá«áááºá áá¯á¶ááŸááºá¡á¬ážááŒáá·áº áá®ážáááºáá±ážáááºáá»á¬áž ááá¯á·ááá¯áẠááááºááá¯á·ááŒá±ááŸááºážáááºážáá»á¬áž (áááŒá¬áá ááŸá áºáá»áá¯ážáá¯á¶áž) ááŸááááºá ááá¯á·ááŒá±á¬áá·áºá áá°ááá¯á·ááẠáááºážááá¯á·á á¡áá»á±á¬áºáááºážááá±á¬áá»ááºááᯠá¡ááŸááºáááẠáá±ážáááºááá·áºá¡áá¬á¡ááŒá Ạáá»á²á·ááœááºááẠáá¬ááœááºáá±á¬ cliched áááºážááá¬áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒáááºá
á¡áá»ááºá¡áááºááœá±ááᯠá á áºáá¯ááºááŒá®áž á¡ááŒá±áá¶áá±á¬áºááŒá°áá¬ááᯠáá»áá±ážááŒáá·áºáá¡á±á¬ááºá áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á áá¬ááºáá¯á¶áá»áŸáá±ááŒááºážááá¯ááºá¡áá ẠGraminsta ááᯠá¡áá¯á¶ážááŒá¯áá° 1 áŠážá០100 áŠážá¡áá á¡ááá¯ááºážá¡áá¬áá áºáá¯ááŒá®ážáá áºáᯠáá»á²á·ááœááºáá«áááºá
áááááºááẠ10á 100á 1000á 10 ááŸáá·áº 000 áá±á¬ááºá¡áá ááá¯ážáá¬áá±á¬á¡áá« áááºááá·áºáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááẠááá¯á¡ááºááŒá±á¬ááºáž áá»áá±ážááŒáá«á
áá¯á·á
á¡áá¯á¶ážááŒá¯áá° á áŠáž- á áẠá áá¯á¶áž
á¡ááá®áá±ážááŸááºážááá¯ááºážááá¯ááá¯á áááºááá¯ááºáá áºáᯠáá«ááŸááá¯áẠááá¯ááá¯ááºážá¡ááá®áá±ážááŸááºážáá² ááŒá áºááŒá áºá á¡ááá á¡á áááºá¡ááá¯ááºáž á áᯠáá«áááºáá«áááºá
- API ááá¯
- áá±áá¬áá±á·á
- client (ááá¯ááá¯ááºážá¡ááá®áá±ážááŸááºážááá¯ááºááá¯áẠááá¯á·ááá¯áẠáááºááá¯ááº)
áá±áá¬áá±á·á áºááẠá¡ááŒá²áááºážáá±áá¬ááᯠááááºážáááºážáááºá API ááẠá€áá±áá¬ááŸáá·áº áááºáááºážáá»ááºááá¯á· áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠáá±á¬ááºááœááºáá±ážáá«áááºá áá±á¬ááºáááºááẠá¡áá¯á¶ážááŒá¯áá°áᶠáá±áá¬áá±ážááá¯á·áááºá
áááá¯áá¬á¡ááŒááºá¡áá client ááŸáá·áº API entities áá»á¬áž áá¯á¶ážáá¯á¶ážáá»á¬ážáá»á¬áž ááœá²ááœá¬áá±áá«á á¡ááºááá®áá±ážááŸááºážáá áºáá¯á¡á¬áž áá»á²á·ááœááºááẠááá¯ááá¯ááœááºáá°ááŒá±á¬ááºáž áááá¯á¶ážáá»á¯ááºááá¯ááºááá«áááºá
á¡ááºááá®áá±ážááŸááºážáá áºáá¯ááᯠá áááºáááºáá±á¬ááºáá±á¬á¡áá«ááœáẠá¡á áááºá¡ááá¯ááºážáá¯á¶ážáá¯áá¯á¶ážááᯠáá°áá®áá±á¬áá¬áá¬áá±á«áºááœáẠáá¯ááºáá±á¬ááºááá¯ááºáááºá á¡áá»áá¯á·áá±á¬áááºážáááºážáá»á¬ážááœááºá áááºážááẠáá»áœááºá¯ááºááá¯á·áááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯áááºáááºážáá»ááºááŸáá·áº áááºáá°áááº- á¡ááºáá»ááºáá®áá¬áá áºáŠážááẠáá±áá¬áá±á·á áºá API ááŸáá·áº client ááᯠáá°áá®áá±á¬á ááºáá±á«áºááœáẠáá¯ááºáá±á¬ááºáááºá
áá®á¡áá¯áá®á¡áá á¡á±á¬ááºááœááºááŒáá¬ážááá·áºá¡ááá¯ááºáž DigitalOcean Droplet ááá¯á·ááá¯áẠAWS EC2 instance áá
áºáá¯ááœáẠáááºážááᯠcloud ááœáẠá¡áá¯á¶ážáá»ááá¯ááºáááº-
ááá¯ááá¯á·ááŒá±á¬ááŒááºážááŒáá·áºá ááá¯ááºáá
áºáá¯ááœáẠáá¯á¶ážá
áœá²áá°áá
áºáŠážáááºááá¯áá«áá áá±áá¬áá±á·á
áºá¡ááœáŸá¬ááᯠá¡ááºááŸá¶ááŒááºážááẠá¡ááŒá²áááºážáá®ážáá«áž á¡áááá¹áá¬ááºááŸáááŸáááºá
10 á¡áá¯á¶ážááŒá¯áá°áá»á¬áž- áá±áá¬áá±á·á áºááᯠáá®ážááŒá¬ážá¡ááá·áºááá¯á· ááœáŸá±á·áá«á
áá±áá¬áá±á·á áºááᯠAmazon RDS ááá¯á·ááá¯áẠDigital Ocean Managed Database áá²á·ááá¯á· á á®áá¶ááá·áºááœá²ááá·áº áááºáá±á¬ááºááŸá¯áá»á¬ážá¡ááŒá Ạááá¯ááºážááŒá¬ážááŒááºážá áá»áœááºá¯ááºááá¯á·ááᯠá¡áá»áááºá¡ááŒá¬ááŒá®áž áá±á¬ááºážáá±á¬ááºáž áááºáá±á¬ááºááŸá¯áá±ážáá«áááºá á ááºáá áºáá¯áááºáž ááá¯á·ááá¯áẠEC2 áá¬ááááœáẠááá¯ááºááá¯áẠhosting áá¯ááºááŒááºážááẠá¡áááºážááẠááá¯á á»á±ážááŒá®ážáá±á¬áºáááºáž á€áááºáá±á¬ááºááŸá¯áá»á¬ážááŒáá·áº á¡áá¬áááºááœáẠá¡áááºááŒá±áá¬ááá·áº á¡áá¯á¶ážáááºááá·áº á¡áááºá áááºážááŸááºážáá»á¬ážá áœá¬ááᯠáááºáááá¯ááºáááº- áá±ááá±á«ááºážá á¯á¶ áááá¹áá°áá°ážááŒááºážá áá¯á¶á á¶áá°áá»á¬ážáááºááŒááºážá á¡ááá¯á¡áá»á±á¬áẠá¡áááºááááºážáááºážááŸá¯áá»á¬ážá ááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬ážá
á€á
áá
áºááẠááá¯áá¯á¶á
á¶á¡ááá¯ááºážááŒá
áºáááº-
á¡áá¯á¶ážááŒá¯áá° 100- client ááᯠáá®ážááŒá¬ážá¡ááá·áºááá¯á· ááœáŸá±á·áá«á
áá¶áá±á¬ááºážáá±á¬ááºáá áœá¬á áá»áœááºá¯ááºááá¯á·áááááá¯á¶ážá¡áá¯á¶ážááŒá¯áá°áá»á¬ážááẠáá»áœááºá¯ááºááá¯á·ááá»áŸá±á¬ááºááœáŸá¬ááᯠá¡ááŸááºááááºááŸá áºáááºááŒáááºá áá¬ááºá¡ááœá¬ážá¡áá¬á ááá¯áááºááŒáááºáá¬áááºá ááá¯á·ááŒá±á¬áá·áº áá¯á¶ážá áœá²áá°ááᯠáá®ážááŒá¬ážá¡ááá·áºááá¯á· ááœáŸá±á·ááẠá¡áá»áááºáááºááŒá®á áááááŒá¯ááá·áºáááºá ááœá²ááœá¬ááŒááºáž entities ááẠá¡ááœááºáááºááá¯ááºáá±á¬ á¡ááá®áá±ážááŸááºážáá áºáᯠáááºáá±á¬ááºááŒááºážá á¡ááá ááá¹ááá áºáá¯ááŒá áºáááºá á áá áºá á¡á áááºá¡ááá¯ááºážáá áºáá¯ááẠá¡ááœá¬ážá¡áᬠááá¯áá»á¬ážáá¬áááºááŸáá·áºá¡áá»áŸá áááºááŸááºáá¬ážáá±á¬ á¡ááœá¬ážá¡áá¬áá¯á¶á á¶áá»á¬ážáá±á«áºá¡ááŒá±áá¶á áááºáá±á¬ááºááŸá¯á áá±ážááᯠáááºááá¯á·ááááºážáá»á¯ááºááẠáááºážá¡á¬áž ááá¯ááºážááŒá¬ážááá¯ááºáá«áááºá
ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááẠclient ááᯠAPI á០áá®ážááŒá¬ážáᯠáááºááŒááºááá¯áá«áááºá áááºážááẠáááºá ááá¯ááá¯ááºážáááºá iOSá Androidá desktop á¡ááºááºáá®áá±ážááŸááºážáá»á¬ážá ááŒááºáá¡ááœá²á·á¡á ááºáž áááºáá±á¬ááºááŸá¯áá»á¬ážá áááºááŒáá·áº ááááºáá±á¬ááºážáá»á¬ážá áœá¬á¡ááœáẠáá®ááœááºáááºáá®ážááẠá ááºážá á¬ážááẠá¡ááœááºááœááºáá°á á±áááºá áááºážááá¯á·á¡á¬ážáá¯á¶ážááẠáá°áá®áá±á¬ API ááá¯á¡áá¯á¶ážááŒá¯ááá·áº áá¯á¶ážá áœá²áá°áá»á¬ážáá¬ááŒá áºáááºá
á¥ááá¬á¡á¬ážááŒáá·áºá ááᯠáá»áœááºá¯ááºááá¯á·áá¡áá¯á¶ážááŒá¯áá°áá»á¬ážááẠááá¯ááá¯ááºážá¡ááºááá®áá±ážááŸááºážáá áºáá¯áá¯ááºááẠáá±á¬ááºážááá¯áá±á·ááŸááá«áááºá á¡áááºá áááºááẠclient ááŸáá·áº API entities áá»á¬ážááᯠááœá²ááŒá¬ážáá¬ážáá«áá áááºážááẠááá¯ááá¯ááœááºáá°áá¬áááºá
á€áá²á·ááá¯á·áá±á¬á áá áºáá áºáá¯áá¯á¶ááá¹áá¬ááºááŒá áºáááº-
á¡áá¯á¶ážááŒá¯áá° 1000- load balancer ááá·áºáá«á
á¡áá¬ááœá±ááᯠáá»áŸá±á¬áºáá±áá«áááºá Graminsta á¡áá¯á¶ážááŒá¯áá°áá»á¬ážááẠáá¬ááºáá¯á¶áá»á¬áž ááá¯áá»á¬ážáá¬á á¡ááºáá¯ááºáááºáá±ááŒáááºá ááŸááºáá¯á¶áááºáá²á· á¡áá±á¡ááœááºáááºáž ááá¯ážáá¬áááºá áá»áœááºá¯ááºááá¯á·á áá áºáŠážáááºážáá±á¬ API áá¬áá¬ááẠá¡ááœá¬ážá¡áá¬á¡á¬ážáá¯á¶ážááᯠááááºážááááºážááẠáááºáá²áá±áá«áááºá áá¶ááá¯ááá¯áááºá
Load Balancer ááẠá¡ááœááºá¡á¬ážáá±á¬ááºážáá±á¬ á¡áá°á¡ááá áºáá¯ááŒá áºáááºá á¡ááá á¡áá°á¡áááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠAPI á ááŸá±á·ááœáẠload balancer ááᯠáá¬ážááŸááᬠáááºážááẠáááºáá±á¬ááºááŸá¯áá áºáá¯áá»ááºážá á®ááá¯á· traffic ááᯠááŒáá·áºáá±áá±ážááŒááºážááŒá áºáááºá á€áááºááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠáá°áá®áá±á¬áá¯ááºááŒáá·áº áá¬áá¬áá»á¬ážááᯠáá±á¬ááºáááºáá¬áá¬áá»á¬ážááᯠáá±á«ááºážááá·áºáᬠáá»áœááºá¯ááºááá¯á·áá¯ááºáá±á¬ááºááá¯ááºááá·áº áá±á¬ááºážááá¯ááŸá¯á¡áá±á¡ááœááºááᯠááá¯ážááŒáá·áºá á±áá«áááºá
áá»áœááºá¯ááºááá¯á·ááẠáááºáááá¯ááºážááá·áºááŸá±á·ááŸáá·áº API ááŸá±á·ááœáẠáá®ážááŒá¬áž load balancers áá»á¬ážááᯠáá¬ážááŸááá«áááºá ááá¯ááá¯áááºááŸá¬ áááºááẠAPI áá¯ááºááŸáá·áº áááºáá¯ááºááᯠá¡áá¯á¶ážááŒá¯ááá·áº ááŒá áºáááºáá»á¬ážá áœá¬ááᯠáá¯ááºáá±á¬ááºááá¯ááºáááºáᯠááá¯ááá¯áááºá load balancer ááẠload áááºážáá«ážáá±á¬ server ááá¯á· áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠááœáŸááºááŒá¬ážáá«áááá·áºáááºá
á€ááœáẠáá»áœááºá¯ááºááá¯á·ááẠáá±á¬ááºáááºá¡áá±ážááŒá®ážáá±á¬ á¡á¬ážáá¬áá»ááº- redundancy ááŒá áºáááºá áá¬áááá áºáá¯á áá¡á±á¬ááºááŒááºáá±á¬á¡áá« (ááŒá áºááá¯ááºáááºááẠááá¯áá±ááá¯ááºááẠááá¯á·ááá¯áẠáá»ááºáá»ááœá¬ážáááº)á áááºáá¬áá±á¬ áá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠáááºáááºáá¯á¶á·ááŒááºááá·áº á¡ááŒá¬ážáá°áá»á¬ážááŸáá·áºá¡áá° áá»áœááºá¯ááºááá¯á· áá»ááºáá±áá«áááºá áá¬áááá áºáá¯áᬠá¡áá¯ááºáá¯ááºáá«áá áá¡á±á¬ááºááŒááºáá«á á áá áºáá áºáá¯áá¯á¶áž áá»ááºá á®ážááœá¬ážáááºááŒá áºáááºá
Load Balancer ááẠá¡ááá¯á¡áá»á±á¬áẠá¡ááá¯ááºážá¡áá¬ááᯠáá¶á·ááá¯ážáá±ážáá«áááºá peak load áááá¯ááºáá® á¡ááŒáááºá¡áá±á¡ááœááºááᯠááá¯ážááŒáŸáá·áºáááºááŸáá·áº á¡áá¯á¶ážááŒá¯áá°á¡á¬ážáá¯á¶áž á¡áááºáá±áá»áááºááœáẠáááºážááᯠáá»áŸá±á¬á·áá»ááẠáááºážááᯠáá»áœááºá¯ááºááá¯á· á á®á ááºáááºááŸááºááá¯ááºáááºá
load balancer ááŒáá·áºá áá±á¬ááºážááá¯ááŸá¯á¡áá±á¡ááœáẠááá¯ážáá¬áááºááŸáá·áºá¡áá»áŸ áá¬ááá¡áá áºáá»á¬ážááᯠáá±á«ááºážááá·áºáá¯á¶ááŒáá·áº API á¡ááá·áºááᯠá¡ááá·áºá¡áááºáááŸááá®ážáá«áž á¡ááá¯ááºážá¡áá¬á¡áá áá»á²á·ááá¯ááºáááºá
ááŸááºáá»ááºá ááᯠáá»áœááºá¯ááºááá¯á·áá áá áºááẠAWS ááŸá Heroku ááá¯á·ááá¯áẠElastic Beanstalk áá²á·ááá¯á·áá±á¬ PaaS áá¯áá¹ááá®áá»á¬ážááŸáá·áº á¡ááœááºáááºáá°áá«ááẠ(ááá¯á·ááŒá±á¬áá·áº áááºážááá¯á·ááẠá¡ááœááºáá¬áááºááŒá®ážáá±áááº)á Heroku ááẠáá±áá¬áá±á·á áºááᯠáá®ážááŒá¬áž host áá áºáá¯ááœáẠááá·áºááœááºážááŒá®áž á¡ááá¯á¡áá»á±á¬áẠá¡ááá¯ááºážá¡áá¬ááŒáá·áº áááºáá»áááºááœááºáá»áŸá¬ááᯠá á®áá¶ááá·áºááœá²áᬠááá·áºá¡á¬áž API á០áá®ážááŒá¬áž áááºáááá¯ááºážááá·áºááᯠáááºáá¶áá»ááºážáááẠááœáá·áºááŒá¯áááºá á€áááºááŸá¬ á¡á á±á¬ááá¯ááºážá¡ááá·áº ááá±á¬áá»ááºáá»á¬áž ááá¯á·ááá¯áẠá áááºááá·áºáá¯ááºáááºážáá»á¬ážá¡ááœáẠHeroku ááᯠá¡áá¯á¶ážááŒá¯áááŒááºážá á¡ááŒá±á¬ááºážáááºážáá áºáá¯ááŒá áºááẠ- áááºááẠá¡ááŒá±áá¶áááºáá±á¬ááºááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááᯠááœááºáááºááŸáááŸááááºááŒá áºáááºá
á¡áá¯á¶ážááŒá¯áá° 10- CDN
áá«ááᯠá¡á ááááºážá áá¯ááºááá·áºáááºá áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠáá¯ááºáá±á¬ááºááŒááºážááŸáá·áº áá¬ááºáá¯á¶á¡áá áºáá»á¬ážááᯠáááºáá¶ááŒááºážááẠáá»áœááºá¯ááºááá¯á·ááá¬áá¬áá»á¬ážáá±á«áºááœáẠá¡ááœááºá¡áááºáž áááºážáá¬áá±á ááŒá¯áá¬áááºá
á€á¡ááá·áºááœááºá áá¯ááºáá¯á¶áá»á¬ážá áá®áá®ááá¯áá»á¬ážááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬áž (AWS S3 ááá¯á·ááá¯áẠDigital Ocean Spaces) ááᯠááááºážáááºážáááºá¡ááœáẠcloud áááºáá±á¬ááºááŸá¯ááᯠáááºá¡áá¯á¶ážááŒá¯ááẠááá¯á¡ááºáá«áááºá áá±áá°áá»á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·á API ááẠáá¯á¶áá»á¬ážááᯠáááºáá±á¬ááºááŸá¯áá±ážááŒááºážá áá¬áá¬ááá¯á· áá¯á¶áá»á¬ážáááºááŒááºážáá²á·ááá¯á·áá±á¬ á¡áá¬áá»á¬ážááᯠááá¯ááºááœááºááŒááºážá០ááŸá±á¬ááºááŒááºááá·áºáááºá
cloud hosting ááá±á¬ááºáááºá¡á¬ážáá¬áá»ááºááŸá¬ CDN ááŒá áºááẠ(AWS ááẠဠadd-on ááᯠCloudfront áá¯áá±á«áºáááºá ááá¯á·áá±á¬áº cloud storage provider áá±á¬áºáá±á¬áºáá»á¬ážáá»á¬ážá áááºážááᯠbox ááŸáá±ážáááº)á CDN ááẠááá¹áá¬áá áºááŸááºážááŸá áá±áá¬á ááºáá¬á¡áá»áá¯ážáá»áá¯ážááœáẠáá»áœááºá¯ááºááá¯á·ááá¯á¶áá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬áẠááááºážáááºážáá«áááºá
áá»áœááºá¯ááºááá¯á·á áááºááá±áá¬á ááºáá¬ááẠá¡áá¯ááá¯ááºážááá¯ážááŒááºáááºááœáẠáááºááŸááá±á¬áºáááºážá áá áºá á¯á¶áá áºáŠážá០áá»áááºááá¯ááºáá¶á០áá¯á¶áá áºáá¯á¶ááᯠáá±á¬ááºážááá¯áá«áá cloud áááºáá±á¬ááºááŸá¯áá±ážáá°á áááá¹áá°áá°ážááŒá®áž áááºážááá¯á·á áá»áááºáá±áá¬á ááºáá¬ááœáẠááááºážáááºážáááºááŒá áºáááºá á€áá¯á¶ááᯠáá»áááºááœáẠáá±á¬ááºážááá¯áá° áá±á¬ááºáá°á áááºážááᯠááá¯ááá¯ááŒááºáááºá áœá¬ áááºáá¶áááŸááááºááŒá áºáááºá áá¬ááºáá¯á¶áá»á¬áž ááá¯á·ááá¯áẠáá®áá®ááá¯áá»á¬ážáá²á·ááá¯á· ááŒá®ážáá¬ážáá±á¬ááá¯ááºáá»á¬ážááŸáá·áºá¡áá° áá»áœááºá¯ááºááá¯á·ááẠááá¹áá¬á¡ááŸá¶á· áá±á«ááºážáá¯ááºáá¯ááºááŒá®áž áá¯ááºááœáŸáá·áºááẠá¡áá»áááºá¡áá±á¬áºááŒá¬ááá·áºá¡áá»áááºááœáẠá¡áá±ážááŒá®ážáá«áááºá
á¡áá¯á¶ážááŒá¯áá° 100- áá±áá¬á¡ááœáŸá¬ááᯠáá»á²á·ááœááºááŒááºážá
CDN ááẠáá»á¬ážá áœá¬áá°áá®áá²á·áááº- áá¬ááºá¡ááœá¬ážá¡áá¬ááẠá¡ááŸáááºá¡áá¯ááºááŒáá·áº ááŒá®ážááœá¬ážáá¬áááºá áá¬áááºáá»á±á¬áº áá®áá®ááá¯ááá±á¬á·áá« Mavid Mobrick ááẠáá»áœááºá¯ááºááá¯á·ááŸáá·áº ááŸááºáá¯á¶áááºááŒá®áž áá°á âáá¬ááºáááºážâ ááᯠáááºááá¯ááºáá«áááºá load balancer ááŒá±á¬áá·áºá API áá¬áá¬áá»á¬ážááœáẠCPU ááŸáá·áº memory áá¯á¶ážá áœá²ááŸá¯ áááºážáá«ážáá±áá±ážááẠ( API áááºáᯠáááºáááºáá±áááº)á ááá¯á·áá±á¬áº áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááŒá±á¬áá·áº á¡áá»áááºáá¯ááºááœá¬ážáááº... á€ááŸá±á¬áá·áºááŸá±ážááŸá¯áá»á¬áž áááºááá¬ááááºážá
áááºááá áºáá»á¬ážááᯠá¡áááºážááẠáá°ážáá±á¬áºááŒáá·áºáᬠáá±áá¬áá±á·á áºáá¬áá¬áá±á«áºááŸá CPU ááẠ80-90% áááºáá¬ážááŒá±á¬ááºáž ááœá±á·ááá«áááºá áá»áœááºá¯ááºááá¯á·ááẠááá·áºáááºáá»ááºááœáẠááŸááá±áá«áááºá
áá±áá¬á¡ááœáŸá¬ááᯠáá»á²á·ááœááºááŒááºážááẠáá®áá»áŸááŒááºážá á¡áááºáá²áá¯á¶ážá¡ááá¯ááºážááŒá áºááá¯ááºáááºá API áá¬áá¬áá»á¬ážááẠááá¯ááºáá¶áá²á·áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠáá±á¬ááºááœááºáá±ážáá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááẠáá±á¬ááºááẠAPI ááŒá áºáááºáá»á¬ážááᯠááá¯ážááŸááºážá áœá¬ ááá·áºááœááºážáá«áááºá ááŸá¬áá±á«ááºáž á¡áá»á¬ážá ᯠáá±áá¬áá±á·á áºááœá±á áá«ááᯠááá¯ááºááá¯ááºáá°ážá áá°ááŒáá¯ááºáá»á¬ážáá±á¬ áááºá ááºáá±áá¬áá±á·á áºá á®áá¶ááá·áºááœá²ááŸá¯á áá áºáá»á¬áž (PostgreSQLá MySQL á áááºááŒáá·áº) á¡ááŒá±á¬ááºážááŒá±á¬áá«áááºá
ááááºážáááºážááŒááºážá
áá»áœááºá¯ááºááá¯á·ááá±áá¬áá±á·á áºáá áœááºážáá±á¬ááºáááºááá¯ááŒáŸáá·áºáááºááẠá¡ááœááºáá°áá¯á¶ážáááºážáááºážáá áºáá¯ááŸá¬ á¡á áááºá¡ááá¯ááºážá¡áá áºáá áºáá¯ááŒá áºááá·áº cache á¡ááœáŸá¬ááá¯ááááºáááºáá±ážááŒááºážááŒá áºáááºá á¡áá¯á¶ážá¡áá»á¬ážáá¯á¶áž áááºááŸáºáááºážáááºážááŸá¬ Redis ááá¯á·ááá¯áẠMemcached áá²á·ááá¯á·áá±á¬ áááºááá¯áá®á¡ááœááºáž áá±á¬á·áááºááá¯áž ááŸááºáááºážá ááá¯ážáá áºáá¯ááŒá áºáááºá cloud á¡áá»á¬ážá á¯ááœáẠá€áááºáá±á¬ááºááŸá¯áá»á¬ážá á á®áá¶ááá·áºááœá²ááŸá¯áá¬ážááŸááºážááŸááá«áááº- Google Cloud ááŸá AWS ááŸáá·áº Memorystore ááœáẠElasticacheá
áááºáá±á¬ááºááŸá¯áá áºáá¯ááẠáá°áá®áá±á¬á¡áá»ááºá¡áááºáá»á¬ážááá¯ááá°ááẠáá±áá¬áá±á·á áºááá¯á· áááºáá«ááá²áá²áá±á«áºááá¯ááŸá¯áá»á¬ážááŒá¯áá¯ááºááá·áºá¡áá« áááºááŸáºááẠá¡áá¯á¶ážáááºáááºá á¡ááŒá±áá¶á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠáá±áá¬áá±á·á áºááᯠáá áºááŒáááºáᬠáááºáá±á¬ááºááŒáá·áºááŸá¯ááá¯ááºááŒá®áž á¡áá»ááºá¡áááºáá»á¬ážááᯠáááºááŸáºááœáẠááááºážáááºážáᬠáááºážááᯠáááºáá¶ááááá±á¬á·áá«á
á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·á Graminsta áááºáá±á¬ááºááŸá¯ááœááºá áá áºá á¯á¶áá áºáŠážááẠááŒááºááœáá·áº Mobrik á áááá¯ááá¯ááºá á¬áá»ááºááŸá¬ááá¯á· áá±á¬ááºááœá¬ážááá¯ááºážá API áá¬áá¬ááẠáááºážááááá¯ááá¯ááºá០á¡áá»ááºá¡áááºáá»á¬ážá¡ááœáẠáá±áá¬áá±á·á áºááᯠáá±ážááŒááºážáááºá áá®ááᯠááŒá áºáá»ááºáá±áá¬ááá¯ážá Mobrik á áááá¯ááá¯ááºá¡áá»ááºá¡áááºááẠáá±á¬ááºážááá¯ááŸá¯áá áºáá¯á á®ááá¯ááºážááœáẠááŒá±á¬ááºážáá²ááŒááºážáááŸááá±á¬ááŒá±á¬áá·áºá áááºážááẠááááºážáááºážááŒááºážá¡ááœáẠá¡áá±á¬ááºážáá¯á¶ážááŒá áºáááºá
áá»áœááºá¯ááºááá¯á·ááẠRedis ááŸá áá±áá¬áá±á·á
áºá០ááááºáá»á¬ážááᯠáá±á¬á·ááŒáá·áº ááááºážáááºážáá«áááºá user:id
áááºáááºáž 30 á
áá¹ááá·áºááŸáá·áºá¡áá°á ááá¯á áá
áºá
á¯á¶áá
áºáá±á¬ááºááẠMobrik ááááá¯ááá¯ááºááá¯á·ááœá¬ážáá±á¬á¡áá«á áá»áœááºá¯ááºááá¯á·ááẠRedis ááᯠáŠážá
áœá¬á
á
áºáá±ážááŒá®áž áá±áá¬ááŸááá±áá«áá áááºážááᯠRedis á០ááá¯ááºááá¯ááºááœáŸá²áá±ážáá«áááºá ááá¯á¡áá« ááá¯ááºáá±á«áºááŸá áá°ááŒáá¯ááºá¡áá»á¬ážáá¯á¶áž áááá¯ááá¯ááºááᯠáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááẠáááºááœá±á·áá»áá» áá»áœááºá¯ááºááá¯á·ááá±áá¬áá±á·á
áºááᯠááááºáá±á¬á·áá«á
áááºááŸáºáááºáá±á¬ááºááŸá¯á¡áá»á¬ážá
á¯á áá±á¬ááºáááºá¡á¬ážáá¬áá»ááºáá
áºáá¯ááŸá¬ áááºážááá¯á·ááẠáá±áá¬áá±á·á
áºáá¬áá¬áá»á¬ážááẠá
áá±ážáá»ááẠááá¯ááá¯ááœááºáá°ááŒááºážááŒá
áºáááºá Redis ááœáẠbuilt-in Redis Cluster áá¯ááºááŸááááºá load balancer ááŸáá·áº áááºáá°áááºá
á¡ááŒá®ážá á¬ážá¡ááá®áá±ážááŸááºážá¡á¬ážáá¯á¶ážáá®ážáá«ážááẠáááºááŸáºááá¯á¡áá¯á¶ážááŒá¯áááºá áááºážááẠááŒááºáááºáá±á¬ API á áá¯á¶ážáá¡áá±ážáá«áá±á¬á¡á áááºá¡ááá¯ááºážáá áºáá¯ááŒá áºáááºá ááá¯ááá¯ááŒááºáááºáá±á¬ query processing and more productive code ááẠá¡áá±ážááŒá®ážáá±á¬áºáááºáž cache ááá«áá² áá¯á¶ážá áœá²áá°áááºážáá±á«ááºážáá»á¬ážá áœá¬áá¶ááá¯á· áááºáá±á¬ááºááŸá¯áá áºáá¯á¡á¬áž á¡ááá¯ááºážá¡áá¬áá áºáá¯á¡áá áá»á²á·ááœááºááẠáááŒá áºááá¯ááºáá±á
áá¯á¶áá°áá»á¬ážáááºáá«á
áá±áá¬áá±á·á áºááá¯á· áá±ážááŒááºážááŸá¯á¡áá±á¡ááœáẠá¡ááœááºáá»á¬ážááŒá¬ážáá¬áá±á¬á¡áá«á áá»áœááºá¯ááºááá¯á·áá¯ááºááá¯ááºááá·áº áá±á¬ááºáááºá¡áá¬áá áºáá¯ááŸá¬ áá±áá¬áá±á·á áºá á®áá¶ááá·áºááœá²ááŸá¯á áá áºááœáẠáááºááŸá¯ááŒááºážáá¯á¶á á¶áá°áá»á¬ážááᯠááá·áºááœááºážáááºááŒá áºáááºá á¡áááºááœááºáá±á¬áºááŒáá¬ážáá±á¬ á á®áá¶ááá·áºááœá²ááá·áºáááºáá±á¬ááºááŸá¯áá»á¬ážááŒáá·áº áááºážááᯠáá áºáá»ááºááŸáááºáá¯á¶ááŒáá·áº áá¯ááºáá±á¬ááºááá¯ááºáá«áááºá áááºááŸá¯áá¯á¶áá°ááẠáááºááá±áá¬áá±á·á áºááœáẠáááºááŸáááŸááá±áááºááŒá áºááŒá®áž SELECT áá¯ááºááŒááºáá»ááºáá»á¬ážá¡ááœáẠáááá¯ááºáá«áááºá
á€ááœáẠáá»áœááºá¯ááºááá¯á·áá áá áºááẠááá¯ááŒá áºáááºá
áá±á¬ááºáááºáá¯ááºáááºáá»á¬áž
á¡ááá®áá±ážááŸááºážááẠá¡ááá¯ááºážá¡áá¬áááºáááºááá¯ážáá¬áááºááŸáá·áºá¡áá»áŸá áá»áœááºá¯ááºááá¯á·ááẠáááºážááá¯á·ááᯠáá®ážááŒá¬ážá áá±ážáá»áááºá¡ááœáẠáááºáá±á¬ááºááŸá¯áá»á¬ážááᯠáááºáááºááœá²ááŒá¬ážáá¬ážáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠWebsockets ááá¯á áá¯á¶ážáá«áá Websockets áá¯ááºáá±á¬ááºááŒááºážáá¯ááºááᯠáá®ážááŒá¬ážáááºáá±á¬ááºááŸá¯áá áºáá¯á¡ááŒá Ạááœá²áá°ááŒááºážááẠá¡áááá¹áá¬ááºááŸááá±áááºá áá»áœááºá¯ááºááá¯á·ááẠáááºážááᯠááœáá·áºáá¬ážáá±á¬ Websockets áá»áááºáááºááŸá¯áá»á¬ážá¡áá±á«áº á¡ááŒá±áá¶á HTTP áá±á¬ááºážááá¯ááŸá¯á¡áá±á¡ááœááºááᯠáááœá²ááŒá¬ážáá² á¡áááºá¡áááºážááŒá¯áá¯ááºááá¯ááºááá·áº áá»áœááºá¯ááºááá¯á·áááá¯ááºááá¯áẠload balancer áá±á¬ááºááŸá ááŒá áºáááºá¡áá áºáá»á¬ážááœáẠáááºážááᯠáá±áá¬áá»ááá¯ááºáá«áááºá
áá±áá¬áá±á·á áºá¡ááá·áºááœáẠááá·áºáááºáá»ááºáá»á¬ážááá¯áááºáž áááºáááºááá¯ááºááœá²áááºááœá¬ážáá«áááºá á€á¡ááá·áºááœáẠdatabase partitioning ááŸáá·áº sharding ááá¯áá±á·áá¬áááºá¡áá»áááºááŒá áºáááºá áá»ááºážáááºááŸá¯ááŸá áºáá¯á áá¯á¶ážááẠá¡ááá¯áá±á¬ááºážááá¯áá±á¬ááºááẠááá¯á¡ááºáá±á¬áºáááºážá áááºááẠáá±áá¬áá±á·á áºááᯠá¡ááá·áºá¡áááºáááŸááá®ážáá«áž á¡ááá¯ááºážá¡áá¬á¡áá áá»á²á·ááœááºááá¯ááºáááºá
New Relic ááá¯á·ááá¯áẠDatadog áá²á·ááá¯á· á á±á¬áá·áºááŒáá·áºááŒááºážááŸáá·áº ááœá²ááŒááºážá áááºááŒá¬ááŒááºáž áááºáá±á¬ááºááŸá¯ááá¯áááºáž áá»áœááºá¯ááºááá¯á· ááá·áºááœááºážááá¯áá«áááºá áááºážááẠááá·áºá¡á¬áž ááŸá±ážááœá±ážáá±á¬áá±ážááœááºážáá»á¬ážááᯠááŸá¬ááœá±áá±á¬áºáá¯ááºáááºááŸáá·áº ááá¯ážáááºááŸá¯ááá¯á¡ááºááá·áºáá±áá¬ááœáẠáá¬ážáááºááẠáá°áá®áá±ážáá«áááºá áá»áœááºá¯ááºááá¯á· á¡ááá¯ááºážá¡áá¬á¡áá±ááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠááááºá¡ááá¯ááºážáá»á¬ážá០á¡áá°á¡áá¡áá»áá¯á·ááᯠá¡áá¯á¶ážááŒá¯áá±á·ááŸáááŒá®áž ááááºááá¯á·ááŸá¯áá»á¬ážááᯠááŸá¬ááœá±áᬠáááºážááá¯á·ááᯠáááºááŸá¬ážáá áºááẠá¡á¬áá¯á¶á áá¯ááºááá¯áá«áááºá
ááááºážáááºážááŒá áº
á€ááá¯á·á
áºááẠá
áááºáá°ážáááºááŸá¯áá
áºáá¯ááŒá
áºáááºá
á¡á±á¬ááºááŒá±ááŸááºáá»ááºáá»á¬áž
- áá»á¬ážá
áœá¬áá±á¬ áá¬áááá»á¬ážá¡ááœááºáž áááºááŒáá·áºáá±ááŸá¯ááá¯ááºáᬠáááºááŸááºáá»ááºáá»á¬ážááŸáá·áº áááºáá°áá±á¬áºáááºáž Redis á¡á
á¯á¡áá±ážá á¡áááºážáᶠá¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ááẠáááºáá»áááºááœááºáá»áŸá¬ááŸáá·áº á¡ááœááºááœá¬ááŒá¬ážáá«áááºá
[ááŒááºáá¬]
source: www.habr.com